Winforms更新和BindingSource更新

问题描述 投票:-1回答:1

有关Winforms更新的一些问题。

1)如果我更新表单,它还会更新其所有子控件吗? Microsoft未声明有关子控件的任何信息。

2)控件如何失效?假设我有一个标签,该标签的文字发生了变化。这是否意味着如果我调用Form.Update,该标签会被视为无效标签,因此会被更新(我假设如果Q1为true,那么它将成立)?还是我需要在标签控件上调用Invalidate才能进行更新?

3)我有一个附加到BindingSource的DatagridView。我注意到,即使我没有在窗体上显式调用Update时,DatagridView仍会更新DatagridView(当我添加新行时)。我想知道Winforms BindingSources是否在后台更新网格?

c# winforms bindingsource
1个回答
0
投票

回答您的问题的关键是了解WinForm Events

有几种不同的有趣事件:

要回答您的特定问题:

  1. 问:如果我更新表单,它还会更新其所有子控件吗?答:否。子控件仅在需要时进行更新-发生影响该特定控件的更改。

  2. 问:控件如何失效?答:我认为您的意思是“什么触发了控件更新?”然后答案是“正在接收控件配置为处理的事件。

  3. 问:为什么我的DatagridView自动更新? [是否] Winforms BindingSources在后台更新了网格?

https://docs.microsoft.com/en-us/dotnet/framework/winforms/controls/how-to-bind-data-to-the-windows-forms-datagridview-control

DataGridView控件支持标准的Windows Forms数据绑定模型,因此它可以绑定到各种数据源。

通常,您绑定到用于管理与数据源交互的BindingSource。 BindingSource可以是任何Windows Forms数据源,这使您在选择或修改数据位置时具有极大的灵活性。 F

© www.soinside.com 2019 - 2024. All rights reserved.