我正在创建一个具有AJAX功能的简单复合控件。尝试实现MaskedEditValidator时,DisplayMoney属性不起作用。 MaskedEdit呈现,没有附加美元符号。有任何想法吗?这是我的代码:
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
priceTextbox.ID = this.ID + "_price";
quantityTextbox.ID = this.ID + "_quantity";
timeTextbox.ID = this.ID + "_time";
submitButton.ID = this.ID + "_submit";
submitButton.Text = "Submit";
priceMask.TargetControlID = priceTextbox.ClientID.ToString();
priceMask.ID = priceMask.TargetControlID.ToString() + "_extender";
priceMask.BehaviorID = "priceMaskExtender";
priceMask.Mask = "99.99";
priceMask.DisplayMoney = MaskedEditShowSymbol.Left;
}
答案 0 :(得分:1)
尝试添加以下行:
priceMask.MaskType = MaskedEditType.Number;
(可选)将ClearMaskOnLostFocus设置为false,如果这是您想要的行为(即使没有聚焦,它也会保留美元符号)。
如果MaskType等于MaskedEditType.Number,则DisplayMoney属性设置器仅设置属性。
set
{
if (MaskType == MaskedEditType.Number)
{
SetPropertyValue("DisplayMoney", value);
}
}
答案 1 :(得分:1)
如果MaskType等于 MaskedEditType.Number ,则DisplayMoney属性设置器仅设置属性。
set
{
if (MaskType == MaskedEditType.Number)
{
SetPropertyValue("DisplayMoney", value);
}
}
所以你需要设置:
priceMask.MaskType = MaskedEditType.Number;