FineUI 官方论坛
标题:
下拉列表显示不了自定义值?求教!
[打印本页]
作者:
szjazz
时间:
2014-2-13 04:22
标题:
下拉列表显示不了自定义值?求教!
本帖最后由 szjazz 于 2014-2-14 00:58 编辑
界面定义了下拉列表为可编辑,不强制选择的属性:
<f:DropDownList ID="ddlCity" runat="server" Label="城市" EnableEdit="true" ForceSelection="false"></f:DropDownList>
复制代码
储存时,也判断了是手工输入的内容,还是选择项的内容,然后赋值给model以保存到数据表:
if (ddlCity.SelectedItem != null)
modelCustomer.City = EmptyToNull(ddlCity.SelectedValue);
else
modelCustomer.City = EmptyToNull(ddlCity.Text);
复制代码
但在操作读入数据时,下面两种方式却都显示不了数据库里的自定义内容呢:方式一:
ddlCity.Text = modelCustomer.City;
复制代码
方式二:
ddlCity.SelectedValue= modelCustomer.City;
复制代码
都不能显示出从数据表里读取到的手工输入的内容(不是下拉选择项的内容)
作者:
小兵
时间:
2014-2-13 09:41
没看懂你的代码,
作者:
szjazz
时间:
2014-2-14 00:58
我再编辑贴子,再说得更清楚些,不知能否看得明白
作者:
小兵
时间:
2014-2-14 09:31
你输入的内容是保存到数据库的,但是你加载的时候,你的下拉框数据源里有你 “手工”输入的内容项没?肯定没有。
作者:
szjazz
时间:
2014-2-14 10:09
本帖最后由 szjazz 于 2014-2-14 10:12 编辑
首先谢谢你的指导!下拉框数据源就是约定的规范数据,所以是没有包含手工输入的数据项,那这么说是初始化时,要先补充上了?那在数据源还要判断是否包含这手工输入的内容?应该怎么做呢?
作者:
szjazz
时间:
2014-2-14 10:46
本帖最后由 szjazz 于 2014-2-14 10:59 编辑
再次感谢小兵的提示,解决了问题:规范的数据源绑定之后,再判断是否有手工输入的值,如无则补加选项:
if (ddlDuty.Items.FindByValue(modelLinkMan.Duty)==null)
ddlDuty.Items.Add(new FineUI.ListItem(modelLinkMan.Duty, modelLinkMan.Duty));
复制代码
作者:
小兵
时间:
2014-2-17 09:26
为人民服务。
欢迎光临 FineUI 官方论坛 (https://fineui.com/bbs/)
Powered by Discuz! X3.4