Tag: 属性

如何将控件的属性绑定到另一个控件的属性?

当表单被禁用时,我希望我的表单中的SaveButton消失。 我这样做: this.formStackPanel.IsEnabled = someValue; if(this.formStackPanel.IsEnabled) { this.saveButton.Visibility = Visibility.Visible; } else { this.saveButton.Visibility = Visibility.Collapsed; } 是不是有办法在XAML中绑定这些属性? 有没有更好的方法呢?

如何从对象列表创建MVC HtmlHelper表

我正在尝试创建一个特定的HtmlHelper表扩展,以减少我的视图中的意大利面条代码。 获取域对象列表我想显示一个表,它在使用域对象的属性作为列时更加智能。 另外,我想禁用一些属性作为列显示。 一个想法是用属性来装饰属性,告诉它不被显示。 希望这是有道理的,但到目前为止我到达的地方…… public static string MyTable(this HtmlHelper helper, string name, IList items, object tableAttributes) { if (items == null || items.Count == 0) return String.Empty; StringBuilder sb = new StringBuilder(); BuildTableHeader(sb, items[0].GetType()); //TODO: to be implemented… //foreach (var i in items) // BuildMyObjectTableRow(sb, i); TagBuilder builder = new TagBuilder(“table”); builder.MergeAttributes(new RouteValueDictionary(tableAttributes)); builder.MergeAttribute(“name”, […]

c#使用datasource 隐藏datagridview中的属性

我认为必须有一个属性来隐藏datagridview中的公共属性。 但我找不到它。

如何获取类属性的名称?

无论如何我可以得到类属性IntProperty的名称? public class ClassName { public static int IntProperty { get { return 0; } } } //something like below but I want to get the string of “IntProperty” ClassName.IntProperty.GetType().Name 基本上我想要做的是动态地将属性名称字符串保存到数据库中,稍后从数据库中检索它并动态调用属性。 好像我正在寻找的东西类似于我认为的鸭子打字。 谢谢! 更新: 这是实际的代码。 这更像是一种工作流程。 但是每个任务都被定义为类的属性(类用于对任务进行分组)。 public class ApplicationTask { public static Task SendIncompleteNotification { get { return new Task ( a => Console.WriteLine(“Sample […]

用于标记类的接口或属性?

我有几个类,我希望用特定的属性标记。 我有两种方法。 一个涉及使用属性扩展类。 另一个使用空接口: 属性 public class FoodAttribute : Attribute { } [Food] public class Pizza { /* … */ } [Food] public class Pancake { /* … */ } if (obj.IsDefined(typeof(FoodAttribute), false)) { /* … */ } 接口 public interface IFoodTag { } public class Pizza : IFoodTag { /* … */ } public […]

如何在log4net消息中添加类别前缀?

我想为现有日志消息中的所有消息添加类别前缀。 但是,将此前缀逐个添加到所有现有日志记录消息中非常繁琐。 有没有办法可以在类级别添加一个属性,那么这个类中的所有消息都会记录到某个类别? 而不是现在的方式如下, Log.Info(“[Ref] Level 1 Starts …”); 我真的想要这样或类似的方式来定义log4net.ILog。 [LoggingCategory(“Ref”)] public class MyClass { public void MyMethod() { Log.Info(“Level 1 Starts …”); } }

缓存reflection属性getter / setter的最佳方法是什么?

我知道反思可能很昂贵。 我有一个经常获取/设置属性的类,我想到的一种方法是以某种方式缓存reflection。 我不确定我是否应该缓存表达式或者在这里做什么。 这就是我目前正在做的事情: typeof(T).GetProperty(propName).SetValue(obj, value, null); typeof(T).GetProperty(propName).GetValue(obj, null); 那么……最快的方法是什么?

.NET字典作为属性

有人可以指出我的一些C#代码示例或提供一些代码,其中Dictionary已被用作Class的属性。 到目前为止我看到的示例并未涵盖所有方面,即如何将字典声明为属性,添加,删除和检索字典中的元素。

XmlSerializer和可空属性

我有一个具有许多Nullable 属性的类,我想将其作为属性序列化为XML。 这显然是禁忌,因为它们被认为是“复杂类型”。 所以,我实现了* Specified模式,我在其中创建了一个add * Value和* Specified属性,如下所示: [XmlIgnore] public int? 年龄 { 得到{return this.age; } 设置{this.age = value; } } [XmlAttribute( “年龄”)] public int AgeValue { 得到{return this.age.Value; } 设置{this.age = value; } } [XmlIgnore] public bool AgeValueSpecified { 得到{return this.age.HasValue; } } 哪个工作正常 – 如果’Age’属性有值,则将其序列化为属性。 如果它没有值,则不会序列化。 问题在于,正如我所提到的,我的class级中有很多Nullable-s,这种模式只是让事情变得混乱和无法管理。 我希望有一种方法可以使Nullable更友好的XmlSerializer。 或者,如果失败了,那就是创建Nullable替换的方法。 有没有人有任何想法我怎么能这样做? 谢谢。

为什么属性目标’typevar’未记录?

众所周知,在C#中,可以指定自定义属性规范的目标 ,如示例中所示 [method: SomeDecoration] [return: SomeOtherMark] int MyMethod(); 其中“targets” method:和return: help指定属性所属的代码中的哪个元素。 根据C#语言规范,存在以下属性目标: 全球性的: assembly module 其他: field event method param property return type 其中一些(如field ) 总是多余的,因为在不指定属性的情况下始终清楚属性“所在”。 但是确实存在(至少在Visual C#的实现和版本中我在这里)一个额外的属性目标,即: typevar 这在例如代码中是允许的 class MyGenericCollection // legal { } 属性target typevar ,就像field和其他一样,从不需要。 我的问题:有没有人知道为什么typevar:在规范或文档中没有提到的历史原因? 当编写2.0版本的C#语言规范时,这个被遗忘了吗? 或者,如果不是疏忽,为什么要实施呢?