0

我正在尝试在我的 ASP.NET 应用程序中使用 ComboBox ( http://www.asp.net/ajaxLibrary/AjaxControlToolkitSampleSite/ComboBox/ComboBox.aspx )。一切正常,但我无法以编程方式设置组合框的值,该值将在页面加载时显示。问题是我想设置值,它不在下拉列表中的值中 - 这是必不可少的,我不想在下拉列表中显示这个值。我尝试了组合框的 'Text'、'SelectedValue'、'SelectedText' 属性,没有任何效果。我什至尝试在组合框中找到 TextBox 控件并设置其文本 - 虽然这设置了 TextBox 的文本(可以在页面 HTML 源代码中看到)但没有显示文本(我猜是一些 javascript 代码导致了这个)。

如果这不可能,我的目标是为文本框提供一个单值提示(从数据源评估),该文本框将显示为下拉列表(您可以单击它,该值将插入文本框中)。所以你可以建议我另一种解决方案。

请帮忙。

谢谢 Uiii

4

1 回答 1

0

将代码隐藏中的受保护字符串属性添加Message到 Page 的类中,并将此脚本添加到页面上:

<script type="text/javascript">
    function pageLoad(sender, args) {
        //set text on initial load only
        if (args.get_isPartialLoad() == false) {
            $find("<%= ComboBox1.ClientID %>").get_textBoxControl().value = "<%= Message %>";
        }
    }
</script>

如果要显示静态消息,可以使用服务器端 Message 属性并将静态文本设置为文本框值。

于 2012-11-21T20:44:32.660 回答