DataGrid刷新界面
WPF 画界面,用DataGrid控件,
DataGrid 一列代码如下:
<DataGridTemplateColumn>
<DataGridTemplateColumn.HeaderTemplate>
<DataTemplate>
<Border> <!--作用 使标题居中-->
<Label Content="工号" />
</Border>
</DataTemplate>
</DataGridTemplateColumn.HeaderTemplate>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Border>
<TextBox Text="{Binding Position0}" Background="{Binding StateColor0}" SelectionChanged="TextBox_SelectionChanged" />
</Border>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
DataGrid 控件绑定数据
this.dataGrid1.ItemsSource = m_listData;
m_listData 中改变 StateColor0 值
TextBox 绑定数据 StateColor0 的值,即TextBox 的背景色随StateColor0 改变
StateColor0 属性定义如下:
SolidColorBrush stateColor0;
public SolidColorBrush StateColor0
{
get { return stateColor0; }
set
{
stateColor0 = value;
if (this.PropertyChanged != null) //激发事件,参数为StateColor0属性
{
this.PropertyChanged.BeginInvoke(this, new PropertyChangedEventArgs("StateColor0"),null,null);
}
}
}
问题: StateColor0 值改变后,必须调用dataGrid1.Items.Refresh(); 界面才能显示StateColor0 改变后的结果;
StateColor0 值变化很快,大概每秒改变一次,如果一秒刷新一次DataGrid,
即每秒调用一次dataGrid1.Items.Refresh();
CPU 占用率很高,
有没有更好刷新界面的方法 或数据绑定好,绑定好不需刷新
DataGrid 一列代码如下:
<DataGridTemplateColumn>
<DataGridTemplateColumn.HeaderTemplate>
<DataTemplate>
<Border> <!--作用 使标题居中-->
<Label Content="工号" />
</Border>
</DataTemplate>
</DataGridTemplateColumn.HeaderTemplate>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Border>
<TextBox Text="{Binding Position0}" Background="{Binding StateColor0}" SelectionChanged="TextBox_SelectionChanged" />
</Border>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
DataGrid 控件绑定数据
this.dataGrid1.ItemsSource = m_listData;
m_listData 中改变 StateColor0 值
TextBox 绑定数据 StateColor0 的值,即TextBox 的背景色随StateColor0 改变
StateColor0 属性定义如下:
SolidColorBrush stateColor0;
public SolidColorBrush StateColor0
{
get { return stateColor0; }
set
{
stateColor0 = value;
if (this.PropertyChanged != null) //激发事件,参数为StateColor0属性
{
this.PropertyChanged.BeginInvoke(this, new PropertyChangedEventArgs("StateColor0"),null,null);
}
}
}
问题: StateColor0 值改变后,必须调用dataGrid1.Items.Refresh(); 界面才能显示StateColor0 改变后的结果;
StateColor0 值变化很快,大概每秒改变一次,如果一秒刷新一次DataGrid,
即每秒调用一次dataGrid1.Items.Refresh();
CPU 占用率很高,
有没有更好刷新界面的方法 或数据绑定好,绑定好不需刷新
...全文
相关推荐
Ajax无刷新分页编辑DataGrid
Ajax技术:Ajax的核心在于能够在后台与服务器进行数据交换,同时保持用户的界面交互状态。
wpf datagrid高刷引起界面卡顿问题探索
wpf datagrid UI高刷
vs2003用CheckBox实现DataGrid的多行删除源码.rar
分析这些代码可以帮助理解如何在VS2003中结合DataGrid和CheckBox控件来实现多行删除功能,包括控件的创建、事件的绑定、数据的处理和界面的刷新。
jquery easyui 表头固定 datagrid 弹出框 AJAX刷新页面
jQuery EasyUI是一个基于jQuery的UI框架,它提供了一系列易于使用的组件,如datagrid(数据网格),帮助开发者快速构建用户界面。
DataGrid数据刷新及选择.rar
另外,对于数据删除和修改,可能采用了异步操作,确保用户界面在操作期间保持流畅,不会出现卡顿现象。3. **选择项的焦点颜色**: DataGrid的行选择功能是其交互性的一个重要部分。


