Как мы можем передать выбранную строку из одной таблицы в другую GridView в ASP.NET на C#.
У меня есть одна страница с двумя GridView в управления gridview1 &амп; gridview2. Я хочу перенести выбранную строку из gridview1 в gridview2 на кнопку Добавить. gridview1-это привязка из базы данных, в которой один из столбцов извлекает изображение из базы данных. Я хочу добавить выбранные строки из gridview1 в другой gridview2 на кнопке Добавить с изображением также.
Что я уже пробовал:
Aspx-файл
<asp:GridView ID="grdQuestion" class="table table-striped table-bordered zero-configuration" runat="server" AutoGenerateColumns="False" OnRowDataBound="grdQuestion_RowDataBound" AllowPaging="True" OnPageIndexChanging="grdQuestion_PageIndexChanging"> <Columns> <asp:TemplateField HeaderText="Select"> <HeaderTemplate> <asp:CheckBox ID="chkSelectAll" Text="" runat="server" ForeColor="#CC0000" BorderColor="#0000CC" BorderStyle="Solid" onclick="javascript:SelectAllCheckboxes(this);" OnCheckedChanged="chkSelectAll_CheckedChanged" /> </HeaderTemplate> <ItemTemplate> <asp:CheckBox ID="chkSelectAdd" runat="server" ForeColor="#CC0000" BorderColor="#0000CC" BorderStyle="Solid" OnCheckedChanged="chkSelectAdd_CheckedChanged"/> </ItemTemplate> </asp:TemplateField> <asp:BoundField HeaderText="Question ID" DataField="QuestionCode" /> <asp:BoundField DataField="Data" HeaderText="Question" Visible="False" /> <asp:TemplateField HeaderText="Question's"> <ItemTemplate> <asp:Image ID="Image1" runat="server" ImageUrl='<%#"data:Image/png;base64,"+ Convert.ToBase64String((byte[])Eval("Data")) %>' /> </ItemTemplate> </asp:TemplateField> <asp:BoundField HeaderText="Answer" DataField="Answer" /> </Columns> </asp:GridView>
aspx-файл.в CS
private void BindGrid() { try { con.Open(); SqlCommand cmd = new SqlCommand("select QuestionCode,Data,Answer,Data1 from tbl_QuestionMaster where TopicCode="+lblTopicCode.Text+"", con); DataSet ds = new DataSet(); SqlDataAdapter da = new SqlDataAdapter(cmd); da.Fill(ds); grdQuestion.DataSource = ds; grdQuestion.DataBind(); } catch (Exception ex) { } finally { con.Close(); } }
Richard Deeming
new SqlCommand("select QuestionCode,Data,Answer,Data1 from tbl_QuestionMaster where TopicCode="+lblTopicCode.Text+"", con)
Не делай этого так! Ваш код потенциально уязвим для SQL-инъекция[^]. НИКОГДА используйте конкатенацию строк для построения SQL-запроса. ВСЕГДА используйте параметризованный запрос.
SqlCommand cmd = new SqlCommand("select QuestionCode,Data,Answer,Data1 from tbl_QuestionMaster where TopicCode = @TopicCode", con); cmd.Parameters.AddWithValue("@TopicCode", lblTopicCode.Text);