使用Word中的CheckBox,探索属性/方法
2006-05-19 15:37
441 查看
第一次使用CheckBox的时候,无论如何都没有办法得到CheckBox的值(true或者false)
刚开始猜测的语法如下:
myCheckBox.Value ,可惜一看Value的类型为Object,然后我把它ToString()也是徒劳:(
然后根据编译器提供的信息:
属性、索引器或事件“Value”不受该语言支持;请尝试直接调用访问器方法“Microsoft.Vbe.Interop.Forms.IMdcCheckBox.get_Value()”或“Microsoft.Vbe.Interop.Forms.IMdcCheckBox.set_Value(ref object)”
然后就敲入get_,然后智能感知(Ctrl+J, .net2003环境下)并得不到任何帮助,只好全部写上,编译一下,哈哈,可以编译通过,看来微软现在并没有完全的把这些控件的属性全部封装完。
最终得到这个值了,如下代码:
if(Boolean.Parse(myCheckBox.get_Value().ToString()))
{
MessageBox.Show("OK");
}
另外,我想看看
using Office = Microsoft.Office.Core;
using Word = Microsoft.Office.Interop.Word;
using MSForms = Microsoft.Vbe.Interop.Forms;
这三个命名空间下到底有什么东东,可惜我的MSDN没有安装这些,哪个可以提供一下相关的补丁包?
下边列出CheckBox的几个
重要属性
myCheckBox.Caption ; // CheckBox 显示的名称 string
myCheckBox.Enabled ; // CheckBox 是否可用 bool
myCheckBox.GroupName; // CheckBox 组设置 string
myCheckBox.Locked ; // CheckBox 被锁定,不允许选择 bool
myCheckBox.MultiSelect // CheckBox可以多选 fmMultiSelect
myCheckBox.Value // CheckBox 是否被选中 object
重要的事件
myCheckBox.Change += new MSForms.MdcCheckBoxEvents_ChangeEventHandler(myCheckBox_Change);
文章来源:http://www.cnblogs.com/koffer/archive/2004/09/25/46668.html
在参考了上面的代码后,我的问题是这样解决的:
prjBusinessRules.b_SemiIn bSemiIn =Factory.GetBSemiIn();
prjCommon.c_SemiIn cSemiIn=bSemiIn.GetSemiInByRollNo(rollNo);
if(cSemiIn.get_ICommon_Data().RecordCount==0) {
throw new Exception("当前带子入库单中不存在卷号为:" + rollNo + "的记录!");
}
cSemiIn.get_ICommon_Data().Fields[cSemiIn.Processing].Value=processing;
bSemiIn.IntoStocksForWaiting(ref cSemiIn,place,qualityid,beltStatus,remark);
另外我发现,这种问题是由于C#的索引器当参数为值类型是应该是传值的操作,而如果COM组件中的类的属性是以传址形式的就会出现这种问题.遇到这种问题自己写的类当然可以将属性修改一下,比如:
public proeprty let MyProperty(byval tvalue as string)
'your code
end property
但是对于非自已编写的类库中的属性就只能使用上文的方法了.
刚开始猜测的语法如下:
myCheckBox.Value ,可惜一看Value的类型为Object,然后我把它ToString()也是徒劳:(
然后根据编译器提供的信息:
属性、索引器或事件“Value”不受该语言支持;请尝试直接调用访问器方法“Microsoft.Vbe.Interop.Forms.IMdcCheckBox.get_Value()”或“Microsoft.Vbe.Interop.Forms.IMdcCheckBox.set_Value(ref object)”
然后就敲入get_,然后智能感知(Ctrl+J, .net2003环境下)并得不到任何帮助,只好全部写上,编译一下,哈哈,可以编译通过,看来微软现在并没有完全的把这些控件的属性全部封装完。
最终得到这个值了,如下代码:
if(Boolean.Parse(myCheckBox.get_Value().ToString()))
{
MessageBox.Show("OK");
}
另外,我想看看
using Office = Microsoft.Office.Core;
using Word = Microsoft.Office.Interop.Word;
using MSForms = Microsoft.Vbe.Interop.Forms;
这三个命名空间下到底有什么东东,可惜我的MSDN没有安装这些,哪个可以提供一下相关的补丁包?
下边列出CheckBox的几个
重要属性
myCheckBox.Caption ; // CheckBox 显示的名称 string
myCheckBox.Enabled ; // CheckBox 是否可用 bool
myCheckBox.GroupName; // CheckBox 组设置 string
myCheckBox.Locked ; // CheckBox 被锁定,不允许选择 bool
myCheckBox.MultiSelect // CheckBox可以多选 fmMultiSelect
myCheckBox.Value // CheckBox 是否被选中 object
重要的事件
myCheckBox.Change += new MSForms.MdcCheckBoxEvents_ChangeEventHandler(myCheckBox_Change);
文章来源:http://www.cnblogs.com/koffer/archive/2004/09/25/46668.html
在参考了上面的代码后,我的问题是这样解决的:
prjBusinessRules.b_SemiIn bSemiIn =Factory.GetBSemiIn();
prjCommon.c_SemiIn cSemiIn=bSemiIn.GetSemiInByRollNo(rollNo);
if(cSemiIn.get_ICommon_Data().RecordCount==0) {
throw new Exception("当前带子入库单中不存在卷号为:" + rollNo + "的记录!");
}
cSemiIn.get_ICommon_Data().Fields[cSemiIn.Processing].Value=processing;
bSemiIn.IntoStocksForWaiting(ref cSemiIn,place,qualityid,beltStatus,remark);
另外我发现,这种问题是由于C#的索引器当参数为值类型是应该是传值的操作,而如果COM组件中的类的属性是以传址形式的就会出现这种问题.遇到这种问题自己写的类当然可以将属性修改一下,比如:
public proeprty let MyProperty(byval tvalue as string)
'your code
end property
但是对于非自已编写的类库中的属性就只能使用上文的方法了.
相关文章推荐
- VSTO:使用Word中的CheckBox,探索属性/方法
- 使用Word中的CheckBox,探索属性/方法
- 使用Word中的CheckBox,探索属性/方法 (转)
- 使用JavaScript脚本无法直接改变Asp.net中Checkbox控件的Enable属性的解决方法
- 使用JavaScript脚本无法直接改变Asp.net中Checkbox控件的Enable属性的解决方法
- 使用JavaScript脚本无法直接改变Asp.net中Checkbox控件的Enable属性的解决方法
- Struts 2 使用属性模型取checkbox 值出现问题解决方法。
- 使用JavaScript脚本无法直接改变Asp.net中Checkbox控件的Enable属性的解决方法
- Five-People:常用控件及其属性(RadioButton,CheckBox,align,margin,padding)使用方法
- javascript使用闭包模拟对象的私有属性和方法
- [UWP]xaml中自定义附加属性使用方法的注意项
- FMDB封装,用OC方法存储model,不用写SQL语句。使用runtime获取对象属性
- 文件属性获取及控件ListView使用常用方法
- 黑马程序员-多态的使用,基类和导出类中方法、属性的使用
- easyui datagrid 表格组件列属性formatter和styler使用方法
- java 中对类中的属性使用set/get方法的意义和用法
- 自定义属性format大全和使用方法
- 学习记录-QCheckBox使用setChecked初始设置没有信号的解决方法
- 使用setter方法和=号进行属性赋值的区别
- 关于static关键字的使用以及与成员方法、成员属性的总结