在用户控件(Upload.ascx)中,datagrid绑定一个dropdownlist。
在进行编辑时,不能取出正确的dropdownlist值;每次都是取dropdownlist的第一个值。
.ascx代码如下:
<asp:datagrid id="gridupfile" runat="server" Width="100%" BorderStyle="Groove" BackColor="White"
BorderColor="Control" AutoGenerateColumns="False">
<FooterStyle HorizontalAlign="Center" Height="28px"></FooterStyle>
<ItemStyle HorizontalAlign="Center" Height="23px"></ItemStyle>
<HeaderStyle HorizontalAlign="Center" Height="25px" BackColor="Gainsboro"></HeaderStyle>
<Columns>
<asp:ButtonColumn DataTextField="filename" HeaderText="文件名" CommandName="Select"></asp:ButtonColumn>
<asp:BoundColumn DataField="filesuf" HeaderText="后缀"></asp:BoundColumn>
<asp:TemplateColumn HeaderText="档案夹名称">
<HeaderTemplate>
<FONT face="宋体"></FONT>
</HeaderTemplate>
<ItemTemplate>
<asp:Label id=Label2 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.FName") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList id=drpTitle runat="server" DataSource="<%#BindDropList()%>" DataTextField="FileName" DataValueField="FileCode"></asp:DropDownList>
</EditItemTemplate>
</asp:TemplateColumn><asp:BoundColumn Visible="False" DataField="username" HeaderText="上传人"></asp:BoundColumn>
<asp:BoundColumn DataField="datetime" HeaderText="上传时间"></asp:BoundColumn>
<asp:ButtonColumn Text="删除" HeaderText="删除" CommandName="Delete"></asp:ButtonColumn>
<asp:EditCommandColumn ButtonType="LinkButton" UpdateText="更新" HeaderText="档案编辑" CancelText="取消" EditText="编辑"></asp:EditCommandColumn>
</Columns>
<PagerStyle HorizontalAlign="Center" Mode="NumericPages"></PagerStyle>
</asp:datagrid>.cs代码:
private void gridupfile_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
DropDownList drop = (DropDownList)e.Item.Cells[2].FindControl("drpTitle");
DropDownList drp1 = (DropDownList)e.Item.Cells[2].Controls[1].FindControl("drpTitle");
string FileCode = drop.SelectedItem.Text.ToString();
Response.Write(FileCode+drp1.SelectedItem.Text.ToString());
gridupfile.EditItemIndex = -1;
BindData();
}public SqlDataReader BindDropList()
{
Data d = new Data();
string SQL1 = "SELECT FileName, FileCode FROM TG_File_Type WHERE (DR = '0') AND (CreatCode = '"+p.getRequestUser+"') ";
return d.DataReader(SQL1);
}
在进行编辑时,不能取出正确的dropdownlist值;每次都是取dropdownlist的第一个值。
.ascx代码如下:
<asp:datagrid id="gridupfile" runat="server" Width="100%" BorderStyle="Groove" BackColor="White"
BorderColor="Control" AutoGenerateColumns="False">
<FooterStyle HorizontalAlign="Center" Height="28px"></FooterStyle>
<ItemStyle HorizontalAlign="Center" Height="23px"></ItemStyle>
<HeaderStyle HorizontalAlign="Center" Height="25px" BackColor="Gainsboro"></HeaderStyle>
<Columns>
<asp:ButtonColumn DataTextField="filename" HeaderText="文件名" CommandName="Select"></asp:ButtonColumn>
<asp:BoundColumn DataField="filesuf" HeaderText="后缀"></asp:BoundColumn>
<asp:TemplateColumn HeaderText="档案夹名称">
<HeaderTemplate>
<FONT face="宋体"></FONT>
</HeaderTemplate>
<ItemTemplate>
<asp:Label id=Label2 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.FName") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList id=drpTitle runat="server" DataSource="<%#BindDropList()%>" DataTextField="FileName" DataValueField="FileCode"></asp:DropDownList>
</EditItemTemplate>
</asp:TemplateColumn><asp:BoundColumn Visible="False" DataField="username" HeaderText="上传人"></asp:BoundColumn>
<asp:BoundColumn DataField="datetime" HeaderText="上传时间"></asp:BoundColumn>
<asp:ButtonColumn Text="删除" HeaderText="删除" CommandName="Delete"></asp:ButtonColumn>
<asp:EditCommandColumn ButtonType="LinkButton" UpdateText="更新" HeaderText="档案编辑" CancelText="取消" EditText="编辑"></asp:EditCommandColumn>
</Columns>
<PagerStyle HorizontalAlign="Center" Mode="NumericPages"></PagerStyle>
</asp:datagrid>.cs代码:
private void gridupfile_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
DropDownList drop = (DropDownList)e.Item.Cells[2].FindControl("drpTitle");
DropDownList drp1 = (DropDownList)e.Item.Cells[2].Controls[1].FindControl("drpTitle");
string FileCode = drop.SelectedItem.Text.ToString();
Response.Write(FileCode+drp1.SelectedItem.Text.ToString());
gridupfile.EditItemIndex = -1;
BindData();
}public SqlDataReader BindDropList()
{
Data d = new Data();
string SQL1 = "SELECT FileName, FileCode FROM TG_File_Type WHERE (DR = '0') AND (CreatCode = '"+p.getRequestUser+"') ";
return d.DataReader(SQL1);
}
解决方案 »
- 用.net如果把GridView中的数据导入到dbf中
- 急求:怎样在Repeater1_ItemDataBound中取值?
- 本人新手,有个关于iis的问题~
- GOOGLE,BAIDU对伪装aspx的URL网页收录怎么样?和html相比!(顶者有分)
- 急问!http://localhost/abc.aspx?text=form中如何得到所传过来的text变量的值啊
- ◆◇◆ 如何調整 TreeView 中 Node 之間的間距?◆◇◆
- ASP.NET使用母版页统一网页标题 散分
- GirdView在新增一条数据后进行数据重新绑定 如何避免再次运行Select操作?
- 奇怪的问题!!关于ExecuteScalar的问题!
- 请问在制作安装程序的时候,安装进度条下面显示当前操作是怎么做的?
- 使用usb 数字证书自动登陆网页!
- 无刷新国家,省份,城市,县城四级连动
{
gridupfile.DataBind();
}
if(!IsPostBack)
{
gridupfile.DataBind();
}
这是什么意思啊??