何らかの理由で、RadComboBox "EmptyMessage"がページの初期ロード時に表示されませんが、コントロールのフォーカスとブラーが外れた後に表示されます。 "EmptyMessage"をデフォルトで強制的に表示するにはどうしたらいいですか?RadComboBox EmptyMessageが初期ロード時に表示されない
次のように私の.aspxのは、次のとおりです。
<telerik:RadComboBox
ID="SomeFilter" runat="server"
EmptyMessage="Choose..."
OnClientSelectedIndexChanging="OnClientSelectedIndexChanging"
OnClientDropDownOpening="OnClientDropDownOpening"
OnClientDropDownClosing="OnClientDropDownClosing"
OnClientBlur="OnClientBlur">
<ItemTemplate>
<asp:CheckBox ID="ItemSelector" runat="server" />
<asp:Label runat="server" ID="ItemLabel" AssociatedControlID="ItemSelector">
<%# DataBinder.Eval(Container, "Text") %>
</asp:Label>
</ItemTemplate>
</telerik:RadComboBox>
背後にある私のコード:
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
SetSomeFilterDropDown();
}
}
private void SetSomeFilterDropDown()
{
SomeFilter.Items.Add(new RadComboBoxItem("Test1", "Test1"));
SomeFilter.Items.Add(new RadComboBoxItem("Test2", "Test2"));
SomeFilter.Items.Add(new RadComboBoxItem("Test3", "Test3"));
SomeFilter.DataBind();
}
私はまた私の.aspxの中に次のJavaScriptのメソッドがあります:
var supressDropDownClosing = false;
OnClientDropDownClosing = function (sender, eventArgs) {
eventArgs.set_cancel(supressDropDownClosing);
sender.clearSelection();
}
OnClientSelectedIndexChanging = function (sender, eventArgs) {
eventArgs.set_cancel(supressDropDownClosing);
}
OnClientDropDownOpening = function (sender, eventArgs) {
supressDropDownClosing = true;
}
OnClientBlur = function (sender) {
supressDropDownClosing = false;
sender.toggleDropDown();
}
をマイコンボボックス"Choose ..."の代わりにデフォルトで "Test1"にデフォルト設定されています。ただし、コンボボックスを開いて閉じると、デフォルトは「選択...」に変わります。