gpt4 book ai didi

c# - WPF 中 DataGrid 的 CellValueChanged 事件?

转载 作者:太空宇宙 更新时间:2023-11-03 13:03:39 28 4
gpt4 key购买 nike

我有一个 DataGrid 绑定(bind)到 DataRowViewObservableCollectionDataGrid.BeginningEdit 在我开始输入之前被调用。 CellEditEnding 在失去焦点后调用。我需要一个在我输入单元格时触发的事件。我应该怎么办?

private static ObservableCollection<DataRowView> _dataGridSrcCollection = new ObservableCollection<DataRowView>();
public static ObservableCollection<DataRowView> DataGridSrcCollection
{
get
{
return _dataGridSrcCollection;
}
set
{
if (value != _dataGridSrcCollection)
{
_dataGridSrcCollection = value;
}
}
}

我以编程方式绑定(bind)每一列。

最佳答案

我怀疑 DataGrid 是否有任何 CellValueChanged 事件,但是假设您所有的数据网格列都是文本列,那么您可以使用 TextChanged 事件如下:

Xaml:

    <DataGrid Grid.Row="0" 
ItemsSource="{Binding DataGridSrcCollection}"
SelectionUnit="Cell"
SelectionMode="Single" >
<DataGrid.Columns>
<DataGridTextColumn Header="your header" Binding="{Binding Path=YourProperty}" >
<DataGridTextColumn.EditingElementStyle>
<Style TargetType="{x:Type TextBox}">
<EventSetter Event="TextChanged" Handler="CellValueChanged" />
</Style>
</DataGridTextColumn.EditingElementStyle>
</DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>

代码隐藏:

    private void CellValueChanged(object sender, TextChangedEventArgs e)
{
// your code
}

关于c# - WPF 中 DataGrid 的 CellValueChanged 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31534888/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com