我的合同如下:
[DataContract]
public class MyObj
{
[DataMember(IsRequired=true)]
public string StrA {get; private set;}
[DataMember(IsRequired=false)]
public string StrB {get; private set;}
}
Run Code Online (Sandbox Code Playgroud)
究竟是什么IsRequired意思?是否IsRequired=false意味着我可以通过单元化传递一个MyObj跨线的实例,StrB或者它是否意味着我可以传递一个MyObj跨越线的实例StrB而不存在?
如果是后者,我如何实际实例化+发送一个MyObj没有的实例StrB?
我有一个带有ContextMenuStrip的DataGridView.ContextMenuStrip的默认行为是自动关闭 - 即立即关闭与之交互的用户.我已经将其关闭以允许多个用户交互(这是我想要的),但是除此之外,我真正需要的是上下文菜单随后关闭用户点击其自身之外的任何地方.
用户点击的空间可以直接在表单上,也可以在子控件(或孩子的孩子等)上.然而,无论如何,我希望整齐地捕获'click away'事件,从而关闭ContextMenuStrip.
非常感谢任何想法.
塔米姆.