7.14. Using a DataView to Control Edits, Deletions, or Additions in Windows Forms
Problem
You need to selectively prevent users from editing, deleting, or adding data in a Windows Forms application.
Solution
Bind a DataView
to Windows Forms controls.
The sample code contains four event handlers:
Form.Load
Sets up the sample by filling a
DataTable
with the Orders table from the Northwind sample database. ADataView
is created from the table and bound to the data grid on the form.- Allow Delete
Button.Click
Sets whether the
DataView
allows records to be deleted based on the value in a check box.- Allow Edit
Button.Click
Sets whether the
DataView
allows records to be edited based on the value in a check box.- Allow Insert
Button.Click
Sets whether the
DataView
allows records to be inserted based on the value in a check box.
The C# code is shown in Example 7-30.
Example 7-30. File: ControlDataEditWithDataViewForm.cs
// Namespaces, variables, and constants using System; using System.Configuration; using System.Data; using System.Data.SqlClient; private DataView dv; // . . . private void ControlDataEditWithDataViewForm_Load(object sender, System.EventArgs e) { // Fill the Order table. SqlDataAdapter da = new SqlDataAdapter("SELECT * FROM Orders", ConfigurationSettings.AppSettings["Sql_ConnectString"]); DataTable dtOrders = new DataTable("Orders"); da.FillSchema(dtOrders, SchemaType.Source); da.Fill(dtOrders); // Create a view and bind it to the grid. dv = new DataView(dtOrders); dataGrid.DataSource ...
Get ADO.NET Cookbook now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.