WPF etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
WPF etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

21 Mart 2018 Çarşamba

WPF ProgressBar Sınıfı

Çift renkli yapmak için şöyle yaparız.
<ProgressBar Width="500" Value="70" Height="30">
  <ProgressBar.Foreground>
    <LinearGradientBrush StartPoint="0,0" EndPoint="1,0" >

      <GradientStop Color="Green" Offset="0" />
      <GradientStop Color="Green" Offset="0.3" />
      <GradientStop Color="Red" Offset="0.3" />
      <GradientStop Color="Red" Offset="0.5" />
      <GradientStop Color="Green" Offset="0.5" />
      <GradientStop Color="Green" Offset="1" />

    </LinearGradientBrush>
  </ProgressBar.Foreground>
</ProgressBar>

26 Şubat 2018 Pazartesi

WPF TextBox

Giriş
Şu satırı dahil ederiz.
using System.Windows.Controls.TextBox;
XAML şöyledir.
<TextBox
    SelectionBrush="#FF54FF50"
    x:Name="textbox" 
    Margin="10,53,0,0" 
    FontSize="24" 
    HorizontalAlignment="Left"
    Width="341" 
    Height="285" 
    VerticalAlignment="Top" 
    TextChanged="Textbox_TextChanged"
    IsReadOnly="True" 
    CaretBrush="Black" 
    BorderBrush="Black" 
    Foreground="Black" 
    FontWeight="Bold" 
    Grid.ColumnSpan="2" 
    Padding="0,5,0,0" 
    HorizontalContentAlignment="Center"  
    VerticalContentAlignment="Center" 
    VerticalScrollBarVisibility="Auto" 
    TextWrapping="Wrap" />
GetLineText metodu
Örnek ver

IsReadOnly Alanı
Şöyle yaparız.
if (textBox.IsReadOnly){...}
LineCount Alanı
Örnek ver

SelectAll metodu
Şöyle yaparız.
textBox.SelectAll();
TextChanged metodu
Şöyle yaparız.
<TextBox
  x:Name="SearchText"
  Margin="0"
  TextWrapping="Wrap"
  Text="" Height="25"
  GotFocus="SearchText_GotFocus"
  TextInput="SearchText_TextInput"
  TextChanged="SearchText_TextChanged" />

13 Şubat 2018 Salı

WPF ListBox Sınıfı

Items
Şöyle yaparız.
var item = ListBoxItem();
item.Tag = ...;
item.Text = ...;
listBox.Items.Add(item);
ItemsSource
Elimizde bir Birds listesi olsun.
public partial class MainWindow : Window
{
  public List<Bird> Birds { get; set; }

  public MainWindow()
  {
    ...
    Birds = new List<Bird>();
    Birds.Add(...);
    Birds.Add(...);

    this.DataContext = this;
  }

  public class Bird
  {
    public string CommonName { get; set; }
  }
}
XML'i şöyledir.
<Grid>
    <ListBox ItemsSource="{Binding Birds}" DisplayMemberPath="CommonName" />
</Grid>

12 Şubat 2018 Pazartesi

WPF DataGrid Sınıfı

ColumnWidth Alanı
Auto yapmak için * değerini atarız. Şöyle yaparız.
<DataGrid Grid.Row="1"
  AutoGenerateColumns="False"
  CanUserAddRows="False"
  CanUserDeleteRows="False"
  CanUserReorderColumns="False"
  CanUserResizeColumns="False"
  CanUserResizeRows="False"
  CanUserSortColumns="False"
  HorizontalScrollBarVisibility="Disabled"
  ItemsSource="{Binding Path=BstCollection,
                Mode=OneWay}"
  RowDetailsVisibilityMode="Collapsed"
  RowHeaderStyle="{StaticResource ExpanderRowHeaderStyle}"
  SelectionMode="Single"
  SelectionUnit="Cell"
  EnableRowVirtualization="False"
  Loaded="DataGrid_Loaded"
  DataContextChanged="DataGrid_DataContextChanged"
  ColumnWidth="*">
ItemsSource Alanı
Örnek
DataTable nesnesini atamak istersek şöyle yaparız.
dataGrid.ItemsSource = dt.DefaultView;
Örnek
Elimizde bir Birds listesi olsun.
public partial class MainWindow : Window
{
  public List<Bird> Birds { get; set; }

  public MainWindow()
  {
    ...
    Birds = new List<Bird>();
    Birds.Add(...);
    Birds.Add(...);
    ...
    
  }

  public class Bird
  {
    ...
  }
}
XML'i şöyledir.
<Grid>
    <DataGrid ItemsSource="{Binding Birds}" />
</Grid>