Получение и ошибка не могу исправить при попытке добавить столбец кнопки
У меня проблемы с исправлением ошибки, которую я получаю, когда пытаюсь добавить столбец кнопки в свою таблицу. Ошибка: Аргумент 1: невозможно преобразовать из "System.Windows.Forms.DataGridViewButtonColumn" в "System.Web.UI.WebControls.DataControlField"
Это в основном говорит, что я не могу использовать локальную переменную 'btn' в строке
gridViewStudent.Columns.Add(btn);
в следующем коде:
gridViewStudent.DataSource = table;
gridViewStudent.DataBind();
DataGridViewButtonColumn btn = new DataGridViewButtonColumn();
gridViewStudent.Columns.Add(btn);
btn.HeaderText = "Click Data";
btn.Text = "Click Here";
btn.Name = "btn";
btn.UseColumnTextForButtonValue = true;
1 ответ
DataGridViewButtonColumn
предназначен для использования с WinForms DataGridView
контроль. В контексте веб-форм вы можете использовать ButtonField
вместо:
var btn = new ButtonField();
btn.HeaderText = "Click Data";
btn.Text = "Click Here";
gridViewStudent.Columns.Add(btn);
Так как нет Name
а также UseColumnTextForButtonValue
свойства для ButtonField
контроль, их назначения просто опущены.
В качестве альтернативы вы можете использовать подготовленный asp:ButtonField
внутри Columns
раздел на странице ASPX:
<asp:GridView runat="server" ID="gridViewStudent" ... />
<Columns>
<%-- other fields --%>
<asp:ButtonField HeaderText="Click Data" Text="Click Here" />
</Columns>
</asp:GridView>
Аналогичная проблема: