cob*_*cob 5 c# resharper resharper-9.0
安装R#9.0后,我的8.2自定义文件布局不再起作用了.我使用9.0中的新版布局设计器重新创建了相同的模式.
我无法重现的部分是使用访问修饰符的属性的详细排序定义:
9.0之前看起来像这样:
[...]
<Sort>
<Access Order="private public internal protected-internal protected"/>
</Sort>
[...]
Run Code Online (Sandbox Code Playgroud)
...导致属性按定义排序 - 特别是:private首先!
在9.0中使用新的Designer时,生成的XAML如下:
[...]
<Entry.SortBy>
<Access />
</Entry.SortBy>
[...]
Run Code Online (Sandbox Code Playgroud)
...仍然通过访问修饰符对成员进行排序,但使用了一些默认的排序规范.设计人员不允许指定任何其他属性并手动编辑XAML,因为在9.0之前会产生错误.
是否有R·9.0任何办法控制的顺序public,private等成员也是这样吗?
顺便说一句.对于其他排序规范存在相同的问题,例如Kind:不再可能指定例如property应该method等等.
事实证明,顺序仍然可以像 9.0 之前的版本一样指定 - 但语法略有不同:
[...]
<Entry.SortBy>
<Access Order="private public internal protectedinternal protected"/>
</Entry.SortBy>
[...]
Run Code Online (Sandbox Code Playgroud)
不同的是protected-internal现在必须是protectedinternal......
另请注意,您必须在 XAML 视图中手动执行此操作,因为可视布局设计器尚不支持此设置。(但它会检测您编辑中的错误 - 因此请务必在 XAML 和设计器视图之间来回切换,以检查是否破坏了任何内容)。
对于关于类型的第二部分:它们也可以排序。这是我的疏忽。
编辑: 整个条目如下所示:
<Entry DisplayName="non-private Fields">
<Entry.Match>
<And>
<Kind Is="Field" />
<Not>
<Access Is="Private" />
</Not>
</And>
</Entry.Match>
<Entry.SortBy>
<Access Order="Public Internal ProtectedInternal Protected Private" />
<Name Is="Enter Pattern Here" />
</Entry.SortBy>
</Entry>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1644 次 |
| 最近记录: |