用户
 找回密码
 立即注册
发表于 2016-5-5 14:41:15
Csharp 发表于 2016-5-4 19:00
MobileViewCellItem的DefaultValue可以改到Layout界面控件的ResourceID

在MobileViewCellItem中如果也能 ...

MobileViewCellItem的DefaultValue并不是修改Layout界面控件的ResourceID,而是MobileViewCellImageButtonItem的ResourceID。

如果不能直接修改,哪么,我只有新增 table 的列,然后在Layout界面控件中去绑定。
这句话并不是特别理解,你是需要实现什么样的需求
使用道具 举报 回复 支持 反对
发表于 2016-5-6 09:48:03
Csharp 发表于 2016-5-5 22:34
比如 DEMO 中的一段代码,我改成了 ImageButton1 ,假设他是  Layout 中的一个图片控铵控件

    ROW.Cel ...

是可以修改到Text和Value的
代码如下:

  1.         private void SmobilerForm1_Load(object sender, EventArgs e)
  2.         {
  3.             //在GridView的Layout界面,添加一个ImageButton,并设置DataMember为Value,DisplayMemeber为Resource,TextMemeber为Text
  4.             DataTable dt = new DataTable("Temp");
  5.             dt.Columns.Add(new DataColumn("Resource", typeof(string)));
  6.             dt.Columns.Add(new DataColumn("Text", typeof(string)));
  7.             dt.Columns.Add(new DataColumn("Value", typeof(int)));

  8.             for (int i = 0; i <= 9; i++)
  9.             {
  10.                 DataRow row = dt.NewRow();
  11.                 row["Resource"] = i.ToString();
  12.                 row["Text"] = i.ToString();
  13.                 row["Value"] = i;
  14.                 dt.Rows.Add(row);
  15.             }

  16.             this.gridView1.DataSource = dt;
  17.             this.gridView1.DataBind();


  18.             ////设置为初始化值,在第二次测试时将注释取消
  19.             //foreach (GridViewRow row in this.gridView1.Rows)
  20.             //{
  21.             //    row.Cell.Items["imageButton1"].DefaultValue = "";
  22.             //    row.Cell.Items["imageButton1"].Text = "初始值";
  23.             //    row.Cell.Items["imageButton1"].Value = 0;
  24.             //}
  25.         }
复制代码
使用道具 举报 回复 支持 反对
发表于 2016-5-7 13:54:16
Csharp 发表于 2016-5-7 11:59
以上代码可以执行。但是关于 Text 与 Value 属性能不能直接内置啊,这样就不用每一个 Imagebutton 的绑定都 ...

Text的值可以内置
在Layout界面里的ImageButton控件里可以直接指定默认的ResourceID和Text属性值,不要指定DisplayMember和TextMemeber,那么在绑定GridView的DataSource时,直接按Layout默认的属性值。
  1.         private void SmobilerForm1_Load(object sender, EventArgs e)
  2.         {
  3.             //在GridView的Layout界面,添加一个ImageButton,设置属性Resrouce为1,设置Text为“测试”,设置DataMember为Value,DisplayMemeber留空,TextMemeber留空
  4.             DataTable dt = new DataTable("Temp");
  5.             dt.Columns.Add(new DataColumn("Value", typeof(int)));

  6.             for (int i = 0; i <= 9; i++)
  7.             {
  8.                 DataRow row = dt.NewRow();
  9.                 row["Value"] = i;
  10.                 dt.Rows.Add(row);
  11.             }
  12.             ////只绑定了Value的值,Resource和Text都使用控件默认属性值。
  13.             this.gridView1.DataSource = dt;
  14.             this.gridView1.DataBind();
  15.         }
复制代码

Value的值目前不可以内置
使用道具 举报 回复 支持 反对
发新帖
您需要登录后才可以回帖 登录 | 立即注册