【发布时间】:2010-11-01 07:03:52
【问题描述】:
我有一个页面上有 Telerik RadComboBox 的网页。此 ComboBox 的属性之一是 EmptyMessage,它在未选择项目时用消息填充组合框。我在运行时将我的组合框绑定到数据源,出于某种原因,它会擦除此 EmptyMessage。有没有办法让我的数据项保持完整并在那里也有空消息?并将其默认为空消息?
【问题讨论】:
标签: c# asp.net vb.net telerik radcombobox
我有一个页面上有 Telerik RadComboBox 的网页。此 ComboBox 的属性之一是 EmptyMessage,它在未选择项目时用消息填充组合框。我在运行时将我的组合框绑定到数据源,出于某种原因,它会擦除此 EmptyMessage。有没有办法让我的数据项保持完整并在那里也有空消息?并将其默认为空消息?
【问题讨论】:
标签: c# asp.net vb.net telerik radcombobox
似乎 Telerik 上接受的答案说您使用客户端脚本来防止文本编辑。
<telerik:Radcombobox ID="RadComboBox1" runat="server" AllowCustomText="True" EmptyMessage="-please select one-">
<Items>
<telerik:RadComboBoxItem runat="server" Text="Item1"></telerik:RadComboBoxItem>
<telerik:RadComboBoxItem runat="server" Text="Item2"></telerik:RadComboBoxItem>
</Items>
<script type="text/javascript">
function pageLoad()
{
var combo = $find("<%= RadComboBox1.ClientID %>");
var input = combo.get_inputDomElement();
input.onkeydown = onKeyDownHandler;
}
function onKeyDownHandler(e)
{
if (!e)
e = window.event;
e.returnValue = false;
if (e.preventDefault)
{
e.preventDefault();
}
}
</script>
【讨论】:
RadComboBox1.Items.Insert(0, New RadComboBoxItem("Select a continent"))
这将添加“选择大陆”作为组合框中的第一项。
【讨论】:
放这个
ComboBox.Text = String.Empty
【讨论】:
在设计时设置 EmptyMessage 属性。
<telerik:RadComboBox ID="ddlCategory" EmptyMessage="-Select-" runat="server" Width="120px" DropDownWidth="100px" AllowCustomText="true">
</telerik:RadComboBox>
在运行时,以下代码对我有用。
ddlCategory.Text = "";
ddlCategory.ClearSelection();
【讨论】:
“AppendDataBoundItems”是否设置为 true?
【讨论】:
另一种选择是在绑定后立即将项目添加到组合框中,然后将其设置为选中。
【讨论】:
我找到了答案。对于任何好奇或需要做类似事情的人,您需要将 AllowCustomText 属性设置为 True。这解决了我的问题。
【讨论】: