如何:禁止添加和删除 DataRepeater 项 (Visual Studio)
默认情况下,用户可以在 DataRepeater 控件中添加和删除项。 用户可以在 DataRepeaterItem 具有焦点时通过按 Ctrl+N 来添加新项,或通过单击 BindingNavigator 控件上的**“添加新项”按钮来添加新项。 用户可以在 DataRepeaterItem 具有焦点时通过按 Delete 来删除项,或通过单击 BindingNavigator 控件上的“删除项”**按钮来删除项。
您可以在设计时或运行时禁止添加和/或删除项。
禁止在设计时添加和删除项
在 Windows 窗体设计器中,选择 DataRepeater 控件。
备注
必须选择控件的下半部分。如果选择项模板部分,将显示一组不同的属性。
在“属性”窗口中,将 AllowUserToAddItems 属性设置为**“False”**。
将 AllowUserToDeleteItems 属性设置为**“False”**。
在 Windows 窗体设计器中选择 BindingNavigator 控件,然后单击**“添加新项”**按钮(该按钮上有一个加号)。
在“属性”窗口中,将 Enabled 属性设置为**“False”**。
在 Windows 窗体设计器中选择 BindingNavigator 控件,然后单击**“删除项”**按钮(该按钮上有一个红色的 X)。
在“属性”窗口中,将 Enabled 属性设置为**“False”**。
在组件栏中选择 DataRepeater 将要绑定到的 BindingSource。
在“属性”窗口中,将 AllowNew 属性设置为**“False”**。
在 Windows 窗体设计器中双击**“删除项”**按钮打开代码编辑器。
在“事件”下拉列表中选择 BindingNavigatorDeleteItem_EnabledChanged 事件。
将以下代码添加到 BindingNavigatorDeleteItem_EnabledChanged 事件处理程序中:
If BindingNavigatorDeleteItem.Enabled = True Then BindingNavigatorDeleteItem.Enabled = False End If
if (bindingNavigatorDeleteItem.Enabled == true) { bindingNavigatorDeleteItem.Enabled = false; }
备注
此步骤是必需的,因为每当当前记录发生更改时,BindingSource 都将启用“删除项”按钮。
禁止在运行时添加和删除项
在 Windows 窗体设计器中双击窗体打开代码编辑器。
将下面的代码添加到 Form_Load 事件中:
DataRepeater1.AllowUserToAddItems = False DataRepeater1.AllowUserToDeleteItems = False BindingNavigatorAddNewItem.Enabled = False ordersBindingSource.AllowNew = False BindingNavigatorDeleteItem.Enabled = False
dataRepeater1.AllowUserToAddItems = false; dataRepeater1.AllowUserToDeleteItems = false; bindingNavigatorAddNewItem.Enabled = false; ordersBindingSource.AllowNew = false; bindingNavigatorDeleteItem.Enabled = false;
将以下代码添加到 BindingNavigatorDeleteItem_EnabledChanged 事件处理程序中:
If BindingNavigatorDeleteItem.Enabled = True Then BindingNavigatorDeleteItem.Enabled = False End If
if (bindingNavigatorDeleteItem.Enabled == true) { bindingNavigatorDeleteItem.Enabled = false; }
备注
此步骤是必需的,因为每当当前记录发生更改时,BindingSource 都将启用“删除项”按钮。
请参见
任务
DataRepeater 控件疑难解答 (Visual Studio)