代码之家  ›  专栏  ›  技术社区  ›  Jerry Welliver

输入时强制大写

  •  0
  • Jerry Welliver  · 技术社区  · 6 年前

    我有一个输入掩码,应该转换成大写。事实上,当焦点从字段移开时,显示将变为大写,但数据库中的数据仍为小写。我怎样才能强制保存大写字母呢。

        #region PartnerID
        public abstract class partnerID : PX.Data.IBqlField { }
        protected string _PartnerID;
        [PXDBString(30, IsUnicode = true, IsKey = true, InputMask = ">CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC")]
        [PXDefault()]
        [PXUIField(DisplayName = "Partner")]
        public virtual string PartnerID { get; set; }
        #endregion
    
    2 回复  |  直到 6 年前
        1
  •  1
  •   RuslanDev Simon ML    6 年前

    为PXDBStringAttribute设置的InputMask如果不在Aspx中使用PXMaskEdit,将不会产生任何效果。尝试在布局编辑器中重新创建输入控件,并使用定义为自动实现属性的PartnerID测试结果。

    要指定其他提示字符,可以将新提示字符的HTML代码设置为Aspx中PXMaskEdit的PromptChar属性:

    <px:PXMaskEdit ID="edPartnerID" runat="server" DataField="PartnerID" PromptChar="&#42;" />

        2
  •  -1
  •   Hugues Beauséjour    6 年前

    还有其他(更好的?)实现这一目标的方法,但我相信C#财产设定者可以:

    #region PartnerID
    public abstract class partnerID : PX.Data.IBqlField { }
    protected string _PartnerID;
    [PXDBString(30, IsUnicode = true, IsKey = true, InputMask = ">CCCCCCCCCCCCCCCCCCCCCCCCCCCCCC")]
    [PXDefault()]
    [PXUIField(DisplayName = "Partner")]
    public virtual string PartnerID 
    { 
       get
       {
          return this._PartnerID;
       },
       set
       {
          this._PartnerID = value.ToUpper();
       } 
    }
    #endregion