Wpf ed SelectedValue和SelectedItem。但是没有任何效果。@Jignesh Raj:我的主要目标是以编程方式向datagrid添加列。我只能从数据库中实现它。所以我只想从datatable中得到解决方案。您在问题中说我使用MVVM所以最
Wpf ed SelectedValue和SelectedItem。但是没有任何效果。@Jignesh Raj:我的主要目标是以编程方式向datagrid添加列。我只能从数据库中实现它。所以我只想从datatable中得到解决方案。您在问题中说我使用MVVM所以最,wpf,mvvm,datagrid,datatable,Wpf,Mvvm,Datagrid,Datatable,ed SelectedValue和SelectedItem。但是没有任何效果。@Jignesh Raj:我的主要目标是以编程方式向datagrid添加列。我只能从数据库中实现它。所以我只想从datatable中得到解决方案。您在问题中说我使用MVVM所以最好的解决方案是创建Dto而不是datatable,绑定SelectedItem属性而不是Selected Value属性最好的解决方案您不能使用datatable与DataGrid绑定,使用Dto列表创建Dto并与DataGrid绑定,使用Se
ed SelectedValue和SelectedItem。但是没有任何效果。@Jignesh Raj:我的主要目标是以编程方式向datagrid添加列。我只能从数据库
中实现它。所以我只想从datatable中得到解决方案。您在问题中说我使用MVVM所以最好的解决方案是创建Dto而不是datatable,绑定SelectedItem属性而不是Selected Value属性最好的解决方案您不能使用datatable与DataGrid绑定,使用Dto列表创建Dto并与DataGrid绑定,使用SelectedItemadd Mode=TwoWay绑定Dto类型属性,并使用SelectedItem而不是SelectedValueI已使用SelectedValue和SelectedItem。但是没有任何效果。@Jignesh Raj:我的主要目标是以编程方式向datagrid添加列。我只能从数据库中实现它。所以我只想从datatable中得到解决方案。您在问题中说我使用MVVM,所以最好的解决方案是创建Dto而不是datatable,并绑定SelectedItem属性而不是Selected Value属性
public void SelectRow(int rowIndex)
{
SelectedRow = SizeQuantityTable.DefaultView[rowIndex];
}
<Grid>
<Grid.DataContext>
<vm:MainViewModel x:Name="Model"/>
</Grid.DataContext>
<DataGrid
ItemsSource="{Binding SizeQuantityTable}"
AutoGenerateColumns="True"
SelectedIndex="{Binding SelectedRow, Mode=TwoWay}"
Margin="0,0,0,120" />
<Button Content="Button" Height="53" HorizontalAlignment="Left" Margin="121,214,0,0" Name="button1" VerticalAlignment="Top" Width="118" Click="button1_Click" />
<TextBox Height="21" HorizontalAlignment="Left" Margin="272,218,0,0" Name="textBox1" VerticalAlignment="Top" Width="114" Text="1" />
</Grid>
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
//I know this is not the correct way to do it in MVVM but I am am taking time from my work... so need to be quick.. :)
private void button1_Click(object sender, RoutedEventArgs e)
{
Model.SelectedRow = int.Parse(textBox1.Text);
}
}
private int selectedRow;
/// <summary>
/// Gets or sets the selected row.
/// </summary>
/// <value>The selected row.</value>
public int SelectedRow
{
get
{
return selectedRow;
}
set
{
selectedRow = value;
OnPropertyChanged("SelectedRow");
}
}