如何使用带有模板的网格视图向多个用户发送消息

本文关键字:用户 消息 视图 网格 何使用 | 更新日期: 2023-09-27 17:58:08

如何使用应连接到两个表的网格视图发送多个用户消息,即登录(从中检索和显示用户名)和第二个表消息(为特定用户名存储消息)。我已将其连接到登录,但无法在消息表中插入值。消息表包含msg_id、username和消息列。

设计如下:

.aspx

</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder2" Runat="Server">
<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False" 
    EnableModelValidation="True" DataSourceID="SqlDataSource1" 
    onrowcommand="GridView2_RowCommand">
<Columns>
    <asp:BoundField DataField="username" HeaderText="username" 
        SortExpression="username" />
    <asp:BoundField DataField="password" HeaderText="password" 
        SortExpression="password" />
    <asp:BoundField DataField="utype" HeaderText="utype" SortExpression="utype" />
    <asp:BoundField DataField="ptype" HeaderText="ptype" SortExpression="ptype" />
</Columns>
      </asp:GridView>
      <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
        ConnectionString="<%$ ConnectionStrings:AutomobileConnectionString14 %>" 
        SelectCommand="SELECT * FROM [login] WHERE ([utype] LIKE '%' + @utype + '%')">
        <SelectParameters>
        <asp:Parameter DefaultValue="U" Name="utype" Type="String" />
        </SelectParameters>
        </asp:SqlDataSource>
</asp:Content>

aspx.cs代码

protected void GridView2_RowCommand(object sender, GridViewCommandEventArgs e)
{
    if (e.CommandName.Equals("cc"))
    {
        TextBox txt1 = (TextBox)GridView2.FooterRow.FindControl("TextBox1");
        foreach(GridView gr in GridView2.Rows)
        {
            CheckBox chk = (CheckBox)gr.FindControl("CheckBox1");
            if (chk.Checked)
            {
                Object ob = GridView2.DataKeys[gr.RowIndex].Value;
            }

现在我被她卡住了,当它已经连接到Login表时,我该如何将值插入到其他表消息中。帮助我,我想在这里完成的是发送消息给已检查的用户。

如何使用带有模板的网格视图向多个用户发送消息

请尝试以下操作:

    <asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource1" DataKeyNames="userId"
        OnRowCommand="GridView2_RowCommand" OnRowEditing="GridView2_RowEditing" OnRowUpdated="GridView2_RowUpdated" OnRowUpdating="GridView2_RowUpdating">
        <Columns>
            <asp:TemplateField HeaderText="Username">
                <ItemTemplate>
                    <asp:Label Text='<%# Eval("username") %>' runat="server"></asp:Label>
                </ItemTemplate>
            </asp:TemplateField>
            <asp:BoundField DataField="password" HeaderText="password"
                SortExpression="password" />
            <asp:BoundField DataField="utype" HeaderText="utype" SortExpression="utype" />
            <asp:BoundField DataField="ptype" HeaderText="ptype" SortExpression="ptype" />
            <asp:TemplateField>
                <ItemTemplate>
                    <asp:Label Text='<%# Eval("messgae") %>' runat="server"></asp:Label>
                </ItemTemplate>
                 <EditItemTemplate>
                        <asp:TextBox ID="txtMsg" runat="server"></asp:TextBox>
                    </EditItemTemplate>
            </asp:TemplateField>
           <asp:TemplateField>
                <ItemTemplate>
                    <asp:CheckBox ID="chk" runat="server" />
                </ItemTemplate>
            </asp:TemplateField>
        </Columns>
    </asp:GridView>

On RowDataBound事件,通过查找控件设置消息的编辑文本框。并参考代码进行内联编辑的复选框点击。

http://www.c-sharpcorner.com/UploadFile/9f0ae2/gridview-edit-delete-and-update-in-Asp-Net/http://www.codeproject.com/Articles/23471/Editable-GridView-in-ASP-NET