我正在尝试从webcontrol访问父页面上的隐藏字段。以下工作但我想在一行中完成。
HiddenField hiddenFieldPid = (HiddenField)this.Parent.FindControl("HiddenFieldPid");
hiddenFieldPid.Value = ListBox_JobPositions.SelectedValue;
不确定为什么这不起作用但是当我这样做时,我没有在intellisense中显示Value属性:
(HiddenField)this.Parent.FindControl("HiddenFieldPid").NOOPTIONFORVALUEHERE = ListBox_JobPositions.SelectedValue;
答案 0 :(得分:5)
您必须添加括号才能使演员在正确的位置工作:
((HiddenField)this.Parent.FindControl("HiddenFieldPid"))
.Value = ListBox_JobPositions.SelectedValue;
但请注意,在一行中执行此操作会打开几个可能难以诊断的异常。
答案 1 :(得分:2)
你很亲密:
((HiddenField)this.Parent.FindControl("HiddenFieldPid")).Value = ListBox_JobPositions.SelectedValue;
基本上,FindControl方法返回需要强制转换的对象。
答案 2 :(得分:0)
((HiddenField)this.Parent.FindControl("HiddenFieldPid")).value=ListBox_JobPositions.SelectedValue.toString();