[英]How to set datagrid SelectedIndex to -1 in app.xaml
所以我在一個wpf窗口中有多個DataGrids,在代碼隱藏中我將每個DataGrid的SelectedIndex屬性設置為-1。
private void Window_Loaded(object sender, RoutedEventArgs e)
{
dgPackaging.ItemsSource = vm.getPackaging();
dgUsers.ItemsSource = vm.getUsers();
dgFarmers.ItemsSource = vm.getAllFarmers();
dgProducts.ItemsSource = vm.getAllProducts();
dgPurchaseOrder.ItemsSource = vm.getAllPurchasOrders();
dgPODescription.ItemsSource = vm.PurchaseOrderDetails;
dgCustomers.ItemsSource = vm.getAllCustomers();
dgFarmers.SelectedIndex = -1;
dgUsers.SelectedIndex = -1;
dgPackaging.SelectedIndex = -1;
dgProducts.SelectedIndex = -1;
dgPurchaseOrder.SelectedIndex = -1;
dgCustomers.SelectedIndex = -1;
}
我的app.xaml中有一個樣式,所有Datagrids都使用:
<Style x:Key="AdminGridStyle" TargetType="DataGrid" BasedOn="{StaticResource dataGridStyle}">
<Setter Property="Margin" Value="3"/>
<Setter Property="RowHeight" Value="40"/>
<Setter Property="IsSynchronizedWithCurrentItem" Value="true"/>
<Setter Property="Grid.ColumnSpan" Value="2"/>
<Setter Property="Grid.RowSpan" Value="8"/>
<Setter Property="SelectedIndex" Value="-1"/>
</Style>
我能夠將SelectedIndex屬性值設置為大於或等於零的任何數字。 當我將屬性值設置為-1時,將選擇Datagrids的第一行。 所以我的問題是,是否可以在AdminGridStyle中將SelectedIndex屬性設置為-1,如果是,如何?
如果您不想選擇DataGrid
任何項,則根本不需要設置SelectedIndex
屬性。
只需從您的Style
刪除IsSynchronizedWithCurrentItem
setter:
<Style x:Key="AdminGridStyle" TargetType="DataGrid" BasedOn="{StaticResource dataGridStyle}">
<Setter Property="Margin" Value="3"/>
<Setter Property="RowHeight" Value="40"/>
<Setter Property="Grid.ColumnSpan" Value="2"/>
<Setter Property="Grid.RowSpan" Value="8"/>
<Setter Property="SelectedIndex" Value="-1"/>
</Style>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.