detailviews里面的编辑摸板含有dropdownlist````
在detailviews自带的编辑```更新方法时```无法获取dropdownlist的DataValueField来进行更新``代码`如下``希望大家帮忙```急啊``明天就要交作业了``<asp:DetailsView ID="DetailsView1" runat="server" AutoGenerateRows="False" DataSourceID="ObjectDataSource2"
Height="50px" Width="125px" Visible="False" AutoGenerateEditButton="True" OnItemUpdated="DetailsView1_ItemUpdated">
<Fields>
<asp:BoundField DataField="Count" HeaderText="Count" SortExpression="Count" />
<asp:BoundField DataField="CreatorID" HeaderText="CreatorID" SortExpression="CreatorID" />
<asp:BoundField DataField="Title" HeaderText="Title" SortExpression="Title" />
<asp:TemplateField HeaderText="CateName" SortExpression="CateID">
<EditItemTemplate>
<asp:DropDownList runat="server" ID="DropDownList1" DataTextField="CateName" DataValueField="CateID"
DataSourceID="ObjectDataSource3" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged"></asp:DropDownList>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# GetCateNameByID(Convert.ToInt32(Eval("CateID"))) %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="From" HeaderText="From" SortExpression="From" />
<asp:BoundField DataField="Date" HeaderText="Date" SortExpression="Date" />
<asp:CheckBoxField DataField="IsTop" HeaderText="IsTop" SortExpression="IsTop" />
<asp:BoundField DataField="ID" HeaderText="ID" SortExpression="ID" />
<asp:BoundField DataField="Content" HeaderText="Content" SortExpression="Content" />
<asp:CheckBoxField DataField="Visible" HeaderText="Visible" SortExpression="Visible" />
</Fields>
</asp:DetailsView>
<asp:ObjectDataSource ID="ObjectDataSource2" runat="server" SelectMethod="GetNewsByID"
TypeName="BLL.E_News" DataObjectTypeName="Model.E_NewsInfo" UpdateMethod="UpdateNews">
<SelectParameters>
<asp:ControlParameter ControlID="GridView1" Name="ID" PropertyName="SelectedValue"
Type="Int32" />
</SelectParameters>
</asp:ObjectDataSource>
在detailviews自带的编辑```更新方法时```无法获取dropdownlist的DataValueField来进行更新``代码`如下``希望大家帮忙```急啊``明天就要交作业了``<asp:DetailsView ID="DetailsView1" runat="server" AutoGenerateRows="False" DataSourceID="ObjectDataSource2"
Height="50px" Width="125px" Visible="False" AutoGenerateEditButton="True" OnItemUpdated="DetailsView1_ItemUpdated">
<Fields>
<asp:BoundField DataField="Count" HeaderText="Count" SortExpression="Count" />
<asp:BoundField DataField="CreatorID" HeaderText="CreatorID" SortExpression="CreatorID" />
<asp:BoundField DataField="Title" HeaderText="Title" SortExpression="Title" />
<asp:TemplateField HeaderText="CateName" SortExpression="CateID">
<EditItemTemplate>
<asp:DropDownList runat="server" ID="DropDownList1" DataTextField="CateName" DataValueField="CateID"
DataSourceID="ObjectDataSource3" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged"></asp:DropDownList>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# GetCateNameByID(Convert.ToInt32(Eval("CateID"))) %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="From" HeaderText="From" SortExpression="From" />
<asp:BoundField DataField="Date" HeaderText="Date" SortExpression="Date" />
<asp:CheckBoxField DataField="IsTop" HeaderText="IsTop" SortExpression="IsTop" />
<asp:BoundField DataField="ID" HeaderText="ID" SortExpression="ID" />
<asp:BoundField DataField="Content" HeaderText="Content" SortExpression="Content" />
<asp:CheckBoxField DataField="Visible" HeaderText="Visible" SortExpression="Visible" />
</Fields>
</asp:DetailsView>
<asp:ObjectDataSource ID="ObjectDataSource2" runat="server" SelectMethod="GetNewsByID"
TypeName="BLL.E_News" DataObjectTypeName="Model.E_NewsInfo" UpdateMethod="UpdateNews">
<SelectParameters>
<asp:ControlParameter ControlID="GridView1" Name="ID" PropertyName="SelectedValue"
Type="Int32" />
</SelectParameters>
</asp:ObjectDataSource>
解决方案 »
- 请教大家下, ffmpeg.exe和.net怎么实现请求的地址直接转换为其他格式呀?
- 又遇到非常棘手的问题了,请达人帮忙!!!
- 用Reflector反编译后如何重新生成dll?
- DataList的Item对齐问题
- 如何把多张图片以流的形式读取按规定位置显示到页面上,急。。。。
- 大家帮忙介绍一些.net系统的模板框架吧,这个效果有源码没?
- 急!两天了没解决,如何获得datagrid中HyperLinkColumn的DataNavigateUrlField的值!
- 关于按纽input提交的问题?
- 一个菜鸟的初级问题
- 动态生成的checkbox,怎么读状态啊?
- GridView中的模板列
- 关于服务器控件和CSS的问题
手写代码比较方便
可以现FindControl(“DropDownList Name”)然后取值
{
DropDownList d=(DropDownList)GridView1.Rows[i].FindControl("DropdownlistName");
string Text=d.selectedItem.ToString();
string value=d.selectedVale;
相应的更新语句
}
DataSourceID="ObjectDataSource3" OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged"></asp:DropDownList>加一个:
SelectedValue='<%# Bind("CateID") %>'
可以试一下
对于 ObjectDataSource, 大概如下: protected void ObjectDataSource1_Updating(object sender, ObjectDataSourceMethodEventArgs e)
{
e.InputParameters["MyParamerter1"] = ((DropDownList)DetailsView1.FindControl("MyDropDownListID")).SelectedValue;
}
Hope help!
好象 Jinglecat(晓风残月 >> 问题需简洁,错误要详细
的方法没错呢``
你说的方法不行哈```提示错误```
错误:: OrderedDictionary 是只读的,无法修改。
cxz08050924()
我用的是detailview来做的``不是gridview``而且我使用的是存储过程```方法的调用是用的
objectdatasource```所以``用你说的方法行不通````
roycelwh(ghost)
加一个:
SelectedValue='<%# Bind("CateID") %>'
可以试一下加了之后运行出错``提示
DropDownList1”有一个无效 SelectedValue,因为它不在项目列表中。
参数名: value
{
E_NewsInfo Anews = (E_NewsInfo)e.InputParameters[0];
Anews.CateID =Convert.ToInt32(((DropDownList)DetailsView1.FindControl("DropDownList1")).SelectedItem.Value);
}我使用了这个方法````写了这2句话```居然问题解决了``
我无法解释这个问题``希望各位朋友能帮忙解释下`````我并没有修改InputParameters的值啊??
其中selectedValue好像要在“设计”视图里绑定。单独添加代码好像会提示一些错误。