【问题标题】:Compact Framework 3.5 referencing user control errorCompact Framework 3.5 引用用户控件错误
【发布时间】:2014-08-27 12:20:41
【问题描述】:

我有一个在 Windows CE 平台上运行的紧凑型框架应用程序 [vb.cf]。我有一个用户控件,我多次添加到我的表单中,以在运行时形成一个网格。

我现在正在尝试访问和设置我的用户控件上的属性并使用 ;

Dim mod_prop As ctl_mod_table = CType(Me.pnl_table.Controls("ctr_" & icount), ctl_mod_table)

这会产生以下错误:

Conversion from string "ctr_1" to type integer is not valid???

我得到这个有什么原因吗?

我不想使用循环所有控制程序,因为这很慢。

【问题讨论】:

  • 为什么不把你的控件保存在一个列表中,这样你以后就不必再找它了?

标签: vb.net controls compact-framework ctype


【解决方案1】:

在 Compact Framework 中,您必须手动按名称搜索控件。 This SO question has a CF-specific answer.

【讨论】:

  • this.Controls.Find 不受 cf.net [紧凑框架] 的支持。这是我的根本问题。 :(
  • 正如克里斯所说,看具体的答案谈论紧凑框架!
【解决方案2】:

您的Controls(...) 正在使用索引值,因此是整数。在这里,您尝试传递一个字符串变量ctr_1,这显然是......不是整数。

您需要通过其名称访问您的控件,尝试简单地调用Me.Controls("ctr_" & icount) 而不是Me.pnl_table.Controls("ctr_" & icount):您将看到表单的控件。

【讨论】:

  • 谢谢。我使用 me.pnl_table.controls 的原因是因为我的用户控件位于名为 pnl_table 的面板中。这有什么不同吗?
  • his.Controls.Find 不受 cf.net [紧凑框架] 的支持。这是我的根本问题。 :(——
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-14
  • 2010-11-01
  • 2010-09-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多