引用数据网格中单元格中的数据?

时间:2015-05-14 14:44:10

标签: c# wpf datagrid

我现在有一个数据网格设置,它填充了一个类对象列表。我需要能够单击datagrid的单个单元格,编辑一个数字,然后单击一个提交按钮,将数据更改保存到适当的位置。

现在我不知道如何从数据网格中获取字符串。我试着找一个解决方案而找不到任何解释它的东西。在此先感谢。!

1 个答案:

答案 0 :(得分:2)

创建一个类:

public class MyDetails
    {
        private string firstName;
        public string FirstName
        {
            get { return firstName; }
            set
            {
                firstName = value;
                OnPropertyChange("FirstName");
            }
        }

        private string lastName;
        public string LastName
        {
            get { return lastName; }
            set
            {
                lastName = value;
                OnPropertyChange("LastName");
            }
        }
    }

现在创建一个集合,您可以在其中将数据添加到ViewModel类中,如下所示:

 private ObservableCollection<MyDetails> myCollection;

    public ObservableCollection<MyDetails> MyCollection
    {
        get { return myCollection; }
        set { myCollection = value; }
    }

现在,将数据添加到上面的集合中,数据将反映在网格中。

现在,转到.XAML文件并编写如下所示的创建数据网格:

将Datagrid的列设置为UpdateSourceTrigger=LostFocusMode=TwoWay,如下所示:

<Grid>
        <StackPanel>
            <DataGrid  HeadersVisibility="None" ColumnWidth="*"  ItemsSource="{Binding MyCollection}">
                <DataGrid.Columns>
                    <DataGridTextColumn Header="First Name"  Binding="{Binding FirstName, Mode=TwoWay, UpdateSourceTrigger=LostFocus}"/>
                    <DataGridTextColumn Header="Last Name" Binding="{Binding LastName, Mode=TwoWay, UpdateSourceTrigger=LostFocus}" />
                </DataGrid.Columns>
            </DataGrid>
        </StackPanel>
    </Grid>

添加,你的按钮到.xaml绑定到命令和写入方法,用于将数据保存到viewModel。