在aspx页面中的属性的Intellisense

时间:2017-02-23 14:36:24

标签: c# asp.net designer propertygrid

我使用Browsable(false)属性从属性网格中隐藏属性。它还删除了aspx页面中属性的intellisense。

有没有办法在aspx页面中显示属性的intellisense?

财产代码

public new string Height
{
    get{ return m_height; }
    set{ m_height = value; }
}

注意

  1. 将类型从string更改为Unit有效。但我不允许将Height的类型更改为Unit。因为这是一个突破性的变化

  2. 使用Browsable(true)有效但在属性网格中更改Height的值会引发错误匹配"。

  3. 我尝试过的事情

    1)使用PreFilterProperties

    ControlDesigner覆盖方法

    智能感知正在出现但如果我在aspx页面中更改了Height属性的值,则设计器不会更新控件。在调试时,我发现设计师没有看到该属性。

            //Height will be removed from property window
            protected override void PreFilterProperties(System.Collections.IDictionary properties)
            {
                base.PreFilterProperties(properties);
    
                //Do not show Height in property grid
                properties["Height"] = TypeDescriptor.CreateProperty(typeof(MyControl), (PropertyDescriptor)properties["Height"], BrowsableAttribute.No);
    
            }
    

    请分享您的建议

0 个答案:

没有答案