2011-01-11 10 views
1

何らかの理由で、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"にデフォルト設定されています。ただし、コンボボックスを開いて閉じると、デフォルトは「選択...」に変わります。

答えて

1

このRadComboBoxは、あなたが期待するように、あなたはまた、TelerikからAllowCustomText

Trueにプロパティを設定する必要が EmptyTextMessageが動作するためには、オンデマンドでロードされていないので:

EmptyMessageプロパティをAllowCustomTextプロパティーが がTrueに設定されている場合は を使用できます( ロードオンデマンドシナリオでは常にtrue)。コンボボックス の入力フィールドに というテキストを設定します。このテキストは、 が選択されていない場合、 コンボボックスがフォーカスを取得し、ぼかしで が再度表示されたときに消えます。

関連する問題