ReSharper: 在XAML中此处不允许使用'Name'属性,请使用'x:Name'代替。

4

ReSharper抱怨我的一些XAML出现以下错误:

'Name'属性在此处不允许,因为类型“FlashingTextBlock”是在同一项目中实现的。请改用“x:Name”

这里有什么问题?我应该按照它所说的去做吗?

2个回答

3

很好。那么它在同一项目中实现为什么是个问题呢? - Roger Lipscombe
这不是问题..简单来说,x:Name会使你的控件在代码背后也能使用。 - Arcturus
1
让我重新表述一下:为什么 ReSharper 认为在同一个项目中实现它是有问题的? - Roger Lipscombe

0

FlashingTextBlock是否具有System.Windows.Markup.RuntimeNameProperty属性?

根据Adam Nathan的《Windows Presentation Foundation Unleashed》:

... 您可以将其Name属性设置为字符串,而不是使用x:Name语法。您可以使用任一机制,但不能同时使用两种机制。


不,它没有 RuntimeNameProperty 属性。它是一个 UserControl,可能从 FrameworkElement 继承 Name - Roger Lipscombe
是的 - 我在这里找到了一个参考链接:http://msdn.microsoft.com/zh-cn/library/system.windows.markup.runtimenamepropertyattribute%28VS.85%29.aspx - richj

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接