Archive for 23 9 月, 2013

疑似本博的IP也被墙了

星期一, 23 9 月, 2013

C:\>tracert lordong.pw

Tracing route to lordong.pw [198.167.136.171]
over a maximum of 30 hops:

  1     2 ms     2 ms     2 ms  192.168.6.16
  2    <1 ms    <1 ms    <1 ms  192.168.3.1
  3    <1 ms    <1 ms    <1 ms  220.248.*.*
  4     5 ms     2 ms     2 ms  112.64.252.73
  5     2 ms     3 ms     3 ms  139.226.193.25
  6    30 ms    31 ms    31 ms  219.158.97.121
  7    33 ms    35 ms    35 ms  219.158.101.34
  8     *        *        *     Request timed out.

通过ip138.com查到219.158.* IP是北京联通的,再试了电信ADSL也打不开,由此怀疑本博的IP也在域名被墙半个月后沦陷,贵裆G点真TMD多呀。。

不管它了,老子该写博的还是继续写,这博文里大多是自己技术上的积累,本来希望可以给他人在处理问题上带来些经验呢,结果贵裆这么一来反而让知识流离于墙外。

C#使用Attribute时的多语言化

星期一, 23 9 月, 2013

通常在C#中我们用PropertyGrid来实验属性页功能,然后定义一个类,把对象实例传给PropertyGrid的SelectedObject属性。

然后在属性类中定义各个属性之前我们加各个Attribute调用来实现属性页上内容,如下代码:
[DisplayNameAttribute("XXX Name")]
[DescriptionAttribute("XXX Description")]
[CategoryAttribute("YYY")]
public string Name { get {...} set{...} }

现在需要实现多语言化,但在Attribute后的括号里不能使用Resources.XXX之类的内容来实现,因为那里需要常量。

解决办法是派生这些Attribute类,重载一些函数实现:

1. DisplayNameAttribute类我们重载public virtual string DisplayName { get; }属性

2. DescriptionAttribute类我们重载public virtual string Description { get; }属性

3. CategoryAttribute类我们重载protected virtual string GetLocalizedString(string value);方法

(更多…)