C# e名为“设置”,有三列: <asp:DropDownList runat="server" ID="orderByList" AutoPostBack="true"> <asp:ListItem Value="fName" Selected="True">First Name</asp:ListItem> <asp:ListItem Value="lName">Last Name</asp:ListItem> <asp:ListItem Value="state">State</asp:ListItem> <asp:ListItem Value="zip">Zip Code</asp:ListItem> <asp:ListItem Value="cwaSource">Source</asp:ListItem> <asp:ListItem Value="cwaJoined">Date Joined</asp:ListItem> </asp:DropDownList> </div> <div> <asp:Label runat="server" ID="searchLabel" Text="Search For: " /> <asp:TextBox ID="searchTextBox" runat="server" Columns="30" /> <asp:Button ID="searchButton" runat="server" Text="Search" /> </div> <div> <asp:UpdatePanel ID = "up" runat="server"> <ContentTemplate> <div style= "overflow:auto; height:150px; width:700px"> <asp:GridView ID="DefaultGrid" runat = "server" DataKeyNames = "fName, lName, zip" onselectedindexchanged = "DefaultGrid_SelectedIndexChanged" autogenerateselectbutton = "true" selectedindex="0"> <SelectedRowStyle BackColor="Azure" forecolor="Black" font-bold="true" /> <Columns> <asp:TemplateField HeaderText="Processed"> <ItemTemplate> <asp:CheckBox ID="CheckBoxProcess" AutoPostBack = "true" Checked ='<%#Eval("processed") %>' OnCheckedChanged="CheckBoxProcess_CheckedChanged" runat="server" Enabled="true" /> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> </div> </div> <asp:TextBox ID="OrderBrowser" columns="70" Rows="14" runat="server" Wrap="false" TextMode="MultiLine" ReadOnly = "true"/> </ContentTemplate> </asp:UpdatePanel> </div> </form> ID(int) 姓名(nvarchar(50)) 价值(nvarchar(50))

C# e名为“设置”,有三列: <asp:DropDownList runat="server" ID="orderByList" AutoPostBack="true"> <asp:ListItem Value="fName" Selected="True">First Name</asp:ListItem> <asp:ListItem Value="lName">Last Name</asp:ListItem> <asp:ListItem Value="state">State</asp:ListItem> <asp:ListItem Value="zip">Zip Code</asp:ListItem> <asp:ListItem Value="cwaSource">Source</asp:ListItem> <asp:ListItem Value="cwaJoined">Date Joined</asp:ListItem> </asp:DropDownList> </div> <div> <asp:Label runat="server" ID="searchLabel" Text="Search For: " /> <asp:TextBox ID="searchTextBox" runat="server" Columns="30" /> <asp:Button ID="searchButton" runat="server" Text="Search" /> </div> <div> <asp:UpdatePanel ID = "up" runat="server"> <ContentTemplate> <div style= "overflow:auto; height:150px; width:700px"> <asp:GridView ID="DefaultGrid" runat = "server" DataKeyNames = "fName, lName, zip" onselectedindexchanged = "DefaultGrid_SelectedIndexChanged" autogenerateselectbutton = "true" selectedindex="0"> <SelectedRowStyle BackColor="Azure" forecolor="Black" font-bold="true" /> <Columns> <asp:TemplateField HeaderText="Processed"> <ItemTemplate> <asp:CheckBox ID="CheckBoxProcess" AutoPostBack = "true" Checked ='<%#Eval("processed") %>' OnCheckedChanged="CheckBoxProcess_CheckedChanged" runat="server" Enabled="true" /> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> </div> </div> <asp:TextBox ID="OrderBrowser" columns="70" Rows="14" runat="server" Wrap="false" TextMode="MultiLine" ReadOnly = "true"/> </ContentTemplate> </asp:UpdatePanel> </div> </form> ID(int) 姓名(nvarchar(50)) 价值(nvarchar(50)),c#,asp.net,sql,ado.net,C#,Asp.net,Sql,Ado.net,已存在ID为0、名称为“CheckboxState”且值为0的行。因此,最初您应该有某种机制,将行放在数据库的第一位 <asp:DropDownList runat="server" ID="orderByList" AutoPostBack="true"> <asp:ListItem Value="fName" Selected="True">First Name</asp:ListItem>

已存在ID为0、名称为“CheckboxState”且值为0的行。因此,最初您应该有某种机制,将行放在数据库的第一位

        <asp:DropDownList runat="server" ID="orderByList" AutoPostBack="true">
            <asp:ListItem Value="fName" Selected="True">First Name</asp:ListItem>
            <asp:ListItem Value="lName">Last Name</asp:ListItem>
            <asp:ListItem Value="state">State</asp:ListItem>
            <asp:ListItem Value="zip">Zip Code</asp:ListItem>
            <asp:ListItem Value="cwaSource">Source</asp:ListItem>
            <asp:ListItem Value="cwaJoined">Date Joined</asp:ListItem>
        </asp:DropDownList>
    </div>
    <div>
        <asp:Label runat="server" ID="searchLabel" Text="Search For: " />
        <asp:TextBox ID="searchTextBox" runat="server" Columns="30" />
        <asp:Button ID="searchButton" runat="server" Text="Search" />
    </div>
<div>
<asp:UpdatePanel ID = "up" runat="server">



    <ContentTemplate>
    <div style= "overflow:auto; height:150px; width:700px">
    <asp:GridView ID="DefaultGrid" runat = "server"  DataKeyNames = "fName, lName, zip"
    onselectedindexchanged = "DefaultGrid_SelectedIndexChanged"
    autogenerateselectbutton = "true"
    selectedindex="0">
    <SelectedRowStyle BackColor="Azure"
    forecolor="Black"
    font-bold="true" />
    <Columns>
    <asp:TemplateField HeaderText="Processed">
                <ItemTemplate>
                    <asp:CheckBox ID="CheckBoxProcess" AutoPostBack = "true" Checked ='<%#Eval("processed") %>' OnCheckedChanged="CheckBoxProcess_CheckedChanged"  runat="server" Enabled="true" />
                </ItemTemplate>
            </asp:TemplateField>
    </Columns>
    </asp:GridView>
    </div>
    </div>
    <asp:TextBox ID="OrderBrowser" columns="70" Rows="14" runat="server" Wrap="false" TextMode="MultiLine" ReadOnly = "true"/>
    </ContentTemplate>
    </asp:UpdatePanel>



</div>
</form>
但是,本质上,您可以在代码隐藏中调用它,并将CheckBox.Checked属性传递给它

        <asp:DropDownList runat="server" ID="orderByList" AutoPostBack="true">
            <asp:ListItem Value="fName" Selected="True">First Name</asp:ListItem>
            <asp:ListItem Value="lName">Last Name</asp:ListItem>
            <asp:ListItem Value="state">State</asp:ListItem>
            <asp:ListItem Value="zip">Zip Code</asp:ListItem>
            <asp:ListItem Value="cwaSource">Source</asp:ListItem>
            <asp:ListItem Value="cwaJoined">Date Joined</asp:ListItem>
        </asp:DropDownList>
    </div>
    <div>
        <asp:Label runat="server" ID="searchLabel" Text="Search For: " />
        <asp:TextBox ID="searchTextBox" runat="server" Columns="30" />
        <asp:Button ID="searchButton" runat="server" Text="Search" />
    </div>
<div>
<asp:UpdatePanel ID = "up" runat="server">



    <ContentTemplate>
    <div style= "overflow:auto; height:150px; width:700px">
    <asp:GridView ID="DefaultGrid" runat = "server"  DataKeyNames = "fName, lName, zip"
    onselectedindexchanged = "DefaultGrid_SelectedIndexChanged"
    autogenerateselectbutton = "true"
    selectedindex="0">
    <SelectedRowStyle BackColor="Azure"
    forecolor="Black"
    font-bold="true" />
    <Columns>
    <asp:TemplateField HeaderText="Processed">
                <ItemTemplate>
                    <asp:CheckBox ID="CheckBoxProcess" AutoPostBack = "true" Checked ='<%#Eval("processed") %>' OnCheckedChanged="CheckBoxProcess_CheckedChanged"  runat="server" Enabled="true" />
                </ItemTemplate>
            </asp:TemplateField>
    </Columns>
    </asp:GridView>
    </div>
    </div>
    <asp:TextBox ID="OrderBrowser" columns="70" Rows="14" runat="server" Wrap="false" TextMode="MultiLine" ReadOnly = "true"/>
    </ContentTemplate>
    </asp:UpdatePanel>



</div>
</form>
static void UpdateCheckedState(bool state) {
    string connectionstring = "<yourconnectionstring>";
    using (SqlConnection connection = new SqlConnection(connectionstring)) {
        try {
            connection.Open();
        }
        catch (System.Data.SqlClient.SqlException ex) {
            // Handle exception
        }
        string updateCommandText = "UPDATE Settings SET Value = @state WHERE Name = 'CheckboxState'";
        using (SqlCommand updateCommand = new SqlCommand(updateCommandText, connection)) {
            SqlParameter stateParameter = new SqlParameter("state", state);
            updateCommand.Parameters.Add(stateParameter);
            try {
                updateCommand.ExecuteNonQuery();
            }
            catch (System.Data.SqlClient.SqlException ex) {
                // Handle exception
            }
        }
    }
}
static void UpdateCheckedState(bool状态){
字符串连接字符串=”;
使用(SqlConnection连接=新的SqlConnection(connectionstring)){
试一试{
connection.Open();
}
catch(System.Data.SqlClient.SqlException ex){
//处理异常
}
string updateCommand=“更新设置集值=@state,其中Name='CheckboxState'”;
使用(SqlCommand updateCommand=newsqlcommand(updateCommandText,connection)){
SqlParameter stateParameter=新的SqlParameter(“状态”,状态);
updateCommand.Parameters.Add(stateParameter);
试一试{
updateCommand.ExecuteOnQuery();
}
catch(System.Data.SqlClient.SqlException ex){
//处理异常
}
}
}
}

不,不是!为什么,我做的事情完全错了吗?当我说“我们”时,我指的是我的公司。哪些部分在工作,哪些部分不工作?我看不到网格中的列与dataAdapter绑定在哪里。好的,我已经添加了所有代码。基本上,数据库不会在复选框的checkedchanged事件中更新。我想让它在用户单击复选框时更改数据库中的“已处理”字段。您甚至不想在
CheckBoxProcess\u CheckedChanged
中更新任何数据库值。谢谢-我要试试这个。数据库中的字段是“processed”,列ID是“CheckBoxProcess”,它们都是初始检查的,因此值为1!