GridView.AutoGenerateEditButton Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает значение, указывающее, следует ли автоматически добавлять поле столбца CommandField с кнопкой "Править" для каждой строки данных в элементе управления GridView.
public:
virtual property bool AutoGenerateEditButton { bool get(); void set(bool value); };
public virtual bool AutoGenerateEditButton { get; set; }
member this.AutoGenerateEditButton : bool with get, set
Public Overridable Property AutoGenerateEditButton As Boolean
Значение свойства
true
для автоматического добавления поля столбца CommandField с кнопкой "Править" для каждой строки данных; в противном случае — false
. Значение по умолчанию — false
.
Примеры
В следующем примере показано, как использовать AutoGenerateEditButton свойство для включения функции автоматического редактирования GridView элемента управления .
<asp:LinqDataSource ID="LinqDataSource1" runat="server"
ContextTypeName="AdventureWorksLTDataClassesDataContext"
EnableDelete="True" EnableInsert="True" EnableUpdate="True"
TableName="SalesOrderDetails">
</asp:LinqDataSource>
<asp:GridView ID="GridView1" runat="server"
AutoGenerateColumns="False"
DataKeyNames="SalesOrderID,SalesOrderDetailID"
DataSourceID="LinqDataSource1">
<Columns>
<asp:CommandField ShowDeleteButton="True"
ShowEditButton="True" />
<asp:BoundField DataField="SalesOrderID"
HeaderText="SalesOrderID" ReadOnly="True"
SortExpression="SalesOrderID" />
<asp:BoundField DataField="SalesOrderDetailID"
HeaderText="SalesOrderDetailID" InsertVisible="False"
ReadOnly="True" SortExpression="SalesOrderDetailID" />
<asp:BoundField DataField="OrderQty"
HeaderText="OrderQty" SortExpression="OrderQty" />
<asp:BoundField DataField="ProductID"
HeaderText="ProductID" SortExpression="ProductID" />
<asp:BoundField DataField="UnitPrice"
HeaderText="UnitPrice" SortExpression="UnitPrice" />
<asp:BoundField DataField="ModifiedDate"
HeaderText="ModifiedDate" SortExpression="ModifiedDate" />
</Columns>
</asp:GridView>
<asp:LinqDataSource ID="LinqDataSource1" runat="server"
ContextTypeName="AdventureWorksLTDataClassesDataContext"
EnableDelete="True" EnableInsert="True" EnableUpdate="True"
TableName="SalesOrderDetails">
</asp:LinqDataSource>
<asp:GridView ID="GridView1" runat="server"
AutoGenerateColumns="False"
DataKeyNames="SalesOrderID,SalesOrderDetailID"
DataSourceID="LinqDataSource1">
<Columns>
<asp:CommandField ShowDeleteButton="True"
ShowEditButton="True" />
<asp:BoundField DataField="SalesOrderID"
HeaderText="SalesOrderID" ReadOnly="True"
SortExpression="SalesOrderID" />
<asp:BoundField DataField="SalesOrderDetailID"
HeaderText="SalesOrderDetailID" InsertVisible="False"
ReadOnly="True" SortExpression="SalesOrderDetailID" />
<asp:BoundField DataField="OrderQty"
HeaderText="OrderQty" SortExpression="OrderQty" />
<asp:BoundField DataField="ProductID"
HeaderText="ProductID" SortExpression="ProductID" />
<asp:BoundField DataField="UnitPrice"
HeaderText="UnitPrice" SortExpression="UnitPrice" />
<asp:BoundField DataField="ModifiedDate"
HeaderText="ModifiedDate" SortExpression="ModifiedDate" />
</Columns>
</asp:GridView>
Комментарии
Когда элемент управления источником данных, поддерживающий обновление, привязан к элементу GridView управления, он GridView может воспользоваться преимуществами возможностей элемента управления источником данных и обеспечить функцию автоматического обновления.
Примечание
Чтобы элемент управления источником данных обновлял данные, его необходимо настроить для обновления данных. Сведения о настройке элемента управления источником данных для обновления записей см. в документации по конкретному элементу управления источником данных.
Если свойству AutoGenerateEditButton присвоено значение true
, столбец (представленный CommandField объектом) с кнопкой Изменить для каждой строки данных автоматически добавляется в GridView элемент управления . Нажатие кнопки Изменить для строки переводит ее в режим редактирования. Если строка находится в режиме редактирования, каждое поле столбца в строке, не доступной только для чтения, отображает соответствующий TextBox элемент управления входными данными, например элемент управления, для типа данных поля. Это позволяет пользователю изменять значение поля.
При нажатии кнопки Изменить также заменяются кнопками Обновить и Отмена. Нажатие кнопки Обновить обновляет строку в источнике данных с любыми изменениями значений и возвращает строку в режим отображения. Нажатие кнопки Отмена отменяет любые изменения значений и возвращает строку в режим отображения.
Примечание
Вы можете программно поместить строку в режим редактирования, задав EditIndex свойство с индексом строки. Чтобы программно выйти из режима редактирования EditIndex , задайте для свойства значение -1.
При использовании встроенной функции обновления необходимо задать DataKeyNames свойство с разделенным запятыми списком имен полей, чтобы определить поле первичного ключа или поля источника данных. В противном случае встроенная функция обновления не сможет обновить правильную запись. При использовании автоматически созданных столбцов полей (задав свойству AutoGenerateColumns значение true
), GridView элемент управления автоматически гарантирует, что автоматически созданные столбцы полей, соответствующие полю или полям, указанным в свойстве DataKeyNames , доступны только для чтения.
Вы можете управлять внешним видом строки, которая находится в режиме редактирования EditRowStyle , с помощью свойства . Общие параметры обычно включают настраиваемый цвет фона, цвет переднего плана и свойства шрифта.
Элемент GridView управления предоставляет несколько событий, которые можно использовать для выполнения настраиваемого действия при обновлении строки. В следующей таблице перечислены доступные события.
Событие | Описание |
---|---|
RowCancelingEdit | Происходит при нажатии кнопки Отмена строки, но до выхода GridView элемента управления из режима редактирования. Это событие часто используется для остановки операции отмены. |
RowEditing | Происходит при щелчке по кнопке "Править" в строке, но до входа элемента управления в режим правки GridView. Это событие часто используется для отмены операции редактирования. |
RowUpdated | Происходит при щелчке по кнопке "Обновить" в строке, но после обновления строки элементом управления GridView. Это событие часто используется для проверки результатов операции обновления. |
RowUpdating | Происходит при щелчке по кнопке "Обновить" в строке, но до обновления строки элементом управления GridView. Это событие часто используется для отмены операции обновления. |