用户
 找回密码
 立即注册

11

主题

15

帖子

309

积分

中级会员

Rank: 3Rank: 3

积分
309
发表于 2021-11-3 18:16:00
  1. using Smobiler.Core;
  2. using Smobiler.Core.Controls;
  3. using System;
  4. using System.Collections.Generic;
  5. using System.ComponentModel;
  6. using System.Linq;
  7. using System.Text;

  8. namespace myapp
  9. {
  10.     ////ToolboxItem用于控制是否添加自定义控件到工具箱,true添加,false不添加
  11.     [System.ComponentModel.ToolboxItem(true)]
  12.    
  13.     partial class fontview : Smobiler.Core.Controls.MobileUserControl
  14.     {
  15.         
  16.         private List<fontviewGroup> group = new List<fontviewGroup>();
  17.         [Category("自定义"), Description("数据集")]
  18.         [DesignerSerializationVisibility(DesignerSerializationVisibility.Content), MergableProperty(false)]
  19.         [TypeConverter(typeof(System.ComponentModel.CollectionConverter))]
  20.         [Editor(typeof(System.ComponentModel.Design.CollectionEditor), typeof(System.Drawing.Design.UITypeEditor))]
  21.         public List<fontviewGroup> Groups
  22.         {
  23.             get { return group; }
  24.             set { group = value;}/*此处set没有执行*/
  25.         }
  26.         //[Serializable]
  27.         public class fontviewGroup
  28.         {
  29.             [Description("数量"), Browsable(true)]
  30.             public int shl { get; set; }

  31.             [Description("事件名"), Browsable(true)]
  32.             private string name = "";
  33.             public string Name {
  34.                 get {return name; }
  35.                 set { name = value; }
  36.             }

  37.             [Description("字体大小"), Browsable(true)]
  38.             public int fontsize { get; set; }

  39.             [Description("字体颜色"), Browsable(true)]
  40.             public string fontcolor { get; set; }

  41.         }

  42.         public fontview() : base()
  43.         {
  44.             //This call is required by the SmobilerUserControl.
  45.             InitializeComponent();
  46.             Mycontrol(Groups);
  47.         }
  48.         
  49.         public void Mycontrol(List<fontviewGroup> data)
  50.         {
  51.             Toast("input");
  52.             foreach(fontviewGroup v in data)
  53.             {
  54.                 Toast(v.Name);
  55.             }
  56.         }
  57.         
  58.     }
  59.    
  60. }
复制代码
这是我控件里的定义属性,如何获得控件属性框groups集合的值呢?修改了没有反应


分享至 : QQ空间
0 人收藏
使用道具 举报 回复
发表于 2021-12-1 13:49:01
解决了吗?我当时也遇到过,记得看过一个贴子,说构造函数和页面LOAD()是有执行顺序的(大概这个意思吧,不准确),如果没解决,你试试把 Mycontrol(Groups);这一行移动到 XXX_load中试试
使用道具 举报 回复 支持 反对
发表于 2021-12-2 07:24:21
fox12300 发表于 2021-12-1 13:49
解决了吗?我当时也遇到过,记得看过一个贴子,说构造函数和页面LOAD()是有执行顺序的(大概这个意思吧, ...

谢谢,后来用代码传值了,反正也是动态,属性框赋值只是测试一下,发现无效觉得很奇怪。谢谢回复,有时间我再测试一下你说的。
使用道具 举报 回复 支持 反对
发新帖
您需要登录后才可以回帖 登录 | 立即注册