0

我有一个下拉列表,其中包含代表列表。当用户选择一个代表时,我使用第一个下拉 Aspx 页面的 selectedindexchange 事件在第二个下拉列表中填充可用的会议时间

<asp:DropDownList ID="delegate_ddl" runat="server" AutoPostBack="True" OnSelectedIndexChanged="ddldelegates_SelectedIndexChanged" Width="200px"></asp:DropDownList>
<asp:DropDownList ID="delegatetime_ddl" runat="server" Width="90px"></asp:DropDownList>
<asp:Button ID="adddelegate" runat="server" Text="Add" onclick="adddelegate_Click"/>

.cs 页面

protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                DataSet ds1 = getdata.getdelegatelist();
                delegate_ddl.DataSource = ds1.Tables[0];
                delegate_ddl.DataTextField = "DELEGATE_NAME";
                delegate_ddl.DataValueField = "DELEGATE_ID";
                delegate_ddl.DataBind();
                delegate_ddl.Items.Insert(0, "--Select--"); 
            }

        }
        protected void ddldelegates_SelectedIndexChanged(object sender, EventArgs e)
        {
            string delselection = delegate_ddl.SelectedValue.ToString();
            DataSet ds2 = getdata.getdelegatetimelist(delselection);
            if (ds2.Tables[0].Rows.Count > 0)
            {
                delegatetime_ddl.DataSource = ds2.Tables[0];
                delegatetime_ddl.DataTextField = "TIMESLOT";
                delegatetime_ddl.DataValueField = "TIMEID";
                delegatetime_ddl.DataBind();
            }
            else
            {
                time_lbl.Text = "No slots Open";
            }
        }
        protected void adddelegate_Click(object sender, EventArgs e)
        {
            string delegateselected = delegate_ddl.SelectedValue.ToString();
            string timeslotselected = delegatetime_ddl.SelectedValue.ToString();
            getdata.delegatemeetinsert(personidd, delegateselected, timeslotselected);
        }

现在数据被插入了——但我的问题是只要用户单击添加按钮,我想在下面的某种网格视图或动态表中显示选择的委托和选择的时隙,并带有删除选项。有人可以提供 C# 中的代码示例来实现上述目标吗

4

1 回答 1

0

而不是使用 Gridview 来显示数据,而是使用一些基本的控件,如标签,它将减少很多不必要的代码。使用 Asp.net 'Panel' 控件并将所有标签和按钮(用于删除目的)封装到 Panel 中,然后根据需要隐藏/显示。这是可能对您有所帮助的代码大纲,

if(!page.IsPostBack) // This goes into Page_Load
{
Panel1.Visible=false;
}

protected void adddelegate_Click(object sender, EventArgs e)   // add this additional code
{
Panel.Visible=True;
GetDelegate()// This method retrieve the delegate you inserted..
Lable1.Text= "Set here Delegate name you just Retrieved"
Label2.Text="Delegate time you retrived"
}

protected void BtnRemovedelegate_Click(object sender, EventArgs e)

{
string Personidd= retrieve person id
string delegateName= Lable1.text;
String timeslot=Label2.Text
SomeDeleteMethod(personidd, delegateName, timeslot); 
Panel1.Visible=false;
}

希望你能明白..

于 2012-09-10T15:11:58.477 回答