当您单击典型的ComboBox时,它会展开。当您再次单击它时,它会崩溃。
当您单击RadComboBox时,它会展开。再次单击它时,没有任何反应。也就是说,除非您单击箭头或实际进行选择。
我希望我的RadComboBox在第二次点击时崩溃,就像普通的ComboBox一样。由于RadComboBox用自己的CSS样式转换成一堆乱七八糟的HTML,我不知道如何去做。
以下是我宣布控制的方式。
public static RadComboBox makeARadicalBox() {
RadComboBox cmbo = new RadComboBox();
cmbo.ID = "MyRadicalComboBox";
List<string> listItems = getListItems();
foreach (string s in listItems)
cmbo.Items.Add(new RadComboBoxItem(s));
cmbo.Skin = "myRadicalSkin";
// TODO - Make the *entire* box clickable instead of just the little arrow
return cmbo;
}
答案 0 :(得分:1)
知道了。单击RadComboBox时,如果下拉列表打开,则隐藏下拉列表,否则显示下拉列表。然后mouseup
部分不会闪烁(快速打开/关闭)。
JavaScript的:
<script type="text/javascript">
function onLoad(sender) {
var div = sender.get_element();
$telerik.$(div).mousedown(function (e) {
if (sender.get_dropDownVisible()) {
sender.hideDropDown();
}
else {
sender.showDropDown();
}
});
$telerik.$(div).mouseup(function (e) {
if (!sender.get_dropDownVisible()) {
sender.hideDropDown();
}
});
}
</script>
的.aspx:
<telerik:RadComboBox runat="server" ID="RadComboBox1"
ShowDropDownOnTextboxClick="false" OnClientLoad="onLoad">
<Items>
<telerik:RadComboBoxItem runat="server" Text="FoodStorage" />
<telerik:RadComboBoxItem runat="server" Text="Freezer" />
<telerik:RadComboBoxItem runat="server" Text="Fridge" />
<telerik:RadComboBoxItem runat="server" Text="Microwave" />
<telerik:RadComboBoxItem runat="server" Text="OnTheGo" />
<telerik:RadComboBoxItem runat="server" Text="Pantry" />
</Items>
</telerik:RadComboBox>