Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 向RadComboBox添加空字符串_C#_Asp.net_Vb.net_Telerik_Radcombobox - Fatal编程技术网

C# 向RadComboBox添加空字符串

C# 向RadComboBox添加空字符串,c#,asp.net,vb.net,telerik,radcombobox,C#,Asp.net,Vb.net,Telerik,Radcombobox,我有一个网页上有一个Telerik RadComboBox。此组合框的属性之一是EmptyMessage,当未选择某个项目时,它会用消息填充组合框。我在运行时将combobox绑定到一个数据源,出于某种原因,它会清除这个空消息。有没有办法让我的数据项保持得体,并将空消息也保留在那里?默认为空消息?是否将“AppendDataBoundItems”设置为true?另一个选项是在绑定后立即将项目添加到组合框中,然后将其设置为选中状态。我找到了答案。对于任何好奇的人或需要执行类似操作的人,需要将All

我有一个网页上有一个Telerik RadComboBox。此组合框的属性之一是EmptyMessage,当未选择某个项目时,它会用消息填充组合框。我在运行时将combobox绑定到一个数据源,出于某种原因,它会清除这个空消息。有没有办法让我的数据项保持得体,并将空消息也保留在那里?默认为空消息?

是否将“AppendDataBoundItems”设置为true?

另一个选项是在绑定后立即将项目添加到组合框中,然后将其设置为选中状态。

我找到了答案。对于任何好奇的人或需要执行类似操作的人,需要将AllowCustomText属性设置为True。这解决了我的问题

RadComboBox1.Items.Insert(0, New RadComboBoxItem("Select a continent"))

这将在组合框中添加“选择一个大陆”作为第一项。

似乎是Telerik上的公认答案,即使用客户端脚本来阻止文本编辑



函数pageLoad()
{ 
var组合=$find(“”);
var input=combo.get_inputdemelement();
input.onkeydown=onKeyDownHandler;
} 
函数onKeyDownHandler(e)
{ 
如果(!e)
e=窗口事件;
e、 returnValue=false;
如果(如默认)
{ 
e、 预防默认值();
} 
} 
把这个

 ComboBox.Text = String.Empty

在设计时设置EmptyMessage属性

<telerik:RadComboBox ID="ddlCategory" EmptyMessage="-Select-" runat="server" Width="120px" DropDownWidth="100px" AllowCustomText="true">
</telerik:RadComboBox>    

在许多情况下,这不是一个好的解决方案,因为它还允许用户输入自己的自定义文本,而不是强制用户选择现有的项目之一。我想在大多数情况下,这种行为是不需要的。允许自定义文本不是正确的答案。大多数时候,您只希望他们能够使用您提供的值。“正确”的答案请看@te的答案。你们怎么可能记下我的答案?我是问这个问题的人。我的回答解决了我的问题。我理解它“解决”了你的问题,但它不能解决问题。正如我在评论中所说的那样。如果您实际上不希望最终用户能够输入自定义文本,则需要在下拉列表的开头插入一条空白记录@te已经熟练地完成了这项工作,您只需记住在绑定RadComboBox后再执行即可。@Chase阻止用户输入自定义文本不是icemanind标准的一部分。它确实回答了他提出的问题。这不应该被否决。投票选出一个更好的答案,可惜这与此无关。EmptyMessage仅在AllowCustomText由于某些原因设置为true时使用。在不允许用户输入自定义文本的情况下,似乎无法使用EmptyMessage样式。问题是您无法使用EmptyMessage样式。那么为什么还要使用RadComboBox呢;除非您使用的是模板,否则您最好回到旧的asp:DropDownList:p我知道这很古老,但是@Grank-我使用@te的方法,效果非常好。你会问“为什么还要使用RadComboBox”-这是为了获得出色的自动完成/自动建议功能,而这是好的ol'DropDownList所没有的。这就是@te的答案最终提供的。@RocktheSixstring是的,看起来他在这个答案发布4个月后提供了简单的代码。。。
 ComboBox.Text = String.Empty
<telerik:RadComboBox ID="ddlCategory" EmptyMessage="-Select-" runat="server" Width="120px" DropDownWidth="100px" AllowCustomText="true">
</telerik:RadComboBox>    
ddlCategory.Text = "";
ddlCategory.ClearSelection();