Winform 多语言开发,求助!!!

liushideyizhenfeng 2012-02-06 03:21:28
我在做Winform多语言开发时遇到错误
Unable to cast object of type 'System.Windows.Forms.ToolStripSeparator' to type 'System.Windows.Forms.ToolStripMenuItem'.


求高手指点,这种错误怎么解决!
...全文
164 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
lijianqiang 2012-09-17
  • 打赏
  • 举报
回复
无法将类型为“System.Windows.Forms.ToolStripSeparator”的对象强制转换为类型“System.Windows.Forms.ToolStripMenuItem”。

遍历二级菜单 中间有分割线就报这个错误 如何解决?
DSIOF3KIDSKTR 2012-02-06
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 liushideyizhenfeng 的回复:]

现在将分隔条去掉,程序可以运行,但是分隔条必须存在,还有什么别的方法吗?……帮帮忙!
[/Quote]
大概猜了一下,你是不是根据控件进行设置界面语言?这要看你的设置界面语言的代码的逻辑,应该是判断没做好,另外也要看设置界面语言的约定,比如控件的命名规则等。

还有,你没搞清菜单项对象之间的关系,主要是继承关系,先弄清这些关系在去遍历,否则还会有其它错误,比如你添加一个dropdown等菜单项试一下
liushideyizhenfeng 2012-02-06
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 lifusong890910 的回复:]
控件的命名控件不对
换成统一的类型控件
[/Quote]
不存在这种问题
lifusong890910 2012-02-06
  • 打赏
  • 举报
回复
控件的命名控件不对
换成统一的类型控件
liushideyizhenfeng 2012-02-06
  • 打赏
  • 举报
回复
我现在想对menuStrip控件里面的项,实现多语言对应。现在存在两个问题:1、当列表存在分隔条的时候,会报错,我现在想要得是,在不删除分隔条的情况下实现多语言对应。2、menuStrip控件前两级可以实现多语言对应,但是第三级就不行了。代码贴上,求高手帮忙看看


/// <summary>
/// Application resources
/// ApplyResources first parameter to set the control
/// The second parameter for the ID in the resource file, and defaults to the name of the control
/// </summary>
private void ApplyResource()
{
System.ComponentModel.ComponentResourceManager res = new ComponentResourceManager(typeof(Form1));
foreach (Control ctl in Controls)
{
res.ApplyResources(ctl, ctl.Name);
}
//Menu
foreach (ToolStripMenuItem item in this.menuStrip1.Items)
{
res.ApplyResources(item, item.Name);
foreach (ToolStripMenuItem subItem in item.DropDownItems)
{
res.ApplyResources(subItem, subItem.Name);
}
}
//Caption
res.ApplyResources(this, "$this");
}
sunwl_191 2012-02-06
  • 打赏
  • 举报
回复
能否详细点
liushideyizhenfeng 2012-02-06
  • 打赏
  • 举报
回复
现在将分隔条去掉,程序可以运行,但是分隔条必须存在,还有什么别的方法吗?……帮帮忙!
liushideyizhenfeng 2012-02-06
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 athwind 的回复:]
这个错误跟多语言没关系吧,意思是无法强制转换,一个是分隔条,一个是菜单项,没法转换
[/Quote]

有没有办法,将分隔条去掉
DSIOF3KIDSKTR 2012-02-06
  • 打赏
  • 举报
回复
这个错误跟多语言没关系吧,意思是无法强制转换,一个是分隔条,一个是菜单项,没法转换
liushideyizhenfeng 2012-02-06
  • 打赏
  • 举报
回复
帮帮忙!

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧