可以直接在我的视图中更改用户控件的颜色吗?
if ! file_content.valid_encoding?
s = file_content.encode("UTF-16be", :invalid=>:replace, :replace=>"?").encode('UTF-8')
s.gsub(/dr/i,'med')
end
我尝试过使用"前景"财产,但它不起作用。
答案 0 :(得分:1)
如果控件中的用户控件(例如文本框)中有子控件,则可以将其前景属性绑定到控件的前景。 Examlpe:
<local:MyControl>
<TextBox Foreground="{Binding Foreground, RelativeSource={RelativeSource AncestorType={x:Type local:MyControl}}}"/>
<TextBlock Foreground="the same binding"/>
...
</local:MyControl>
如果用户控件没有实现任何基类型类(例如FrameworkElement或UserControl),那么您必须创建Foreground属性,如果您也想使用wpf绑定,还要使用它的decency属性。 MyControl.xaml.cs中的代码:
public static readonly DepencyProperty ForegroundProperty = DepencyProperty.Register("Foreground", typeof(Brush), typeof(MyControl));
public Brush Foreground {
get { return (Brush)GetValue(ForegroundProperty); }
set { SetValue(ForegroundProperty, value); }
}
在第二种情况下,您还应该实现INotifyPropertyChanged接口来更新wpf控件。
答案 1 :(得分:0)
您可以简单地更改<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd"
的任何属性。例如:
UserControl
为了完成这项工作,在控件中处理这些属性(或其他自定义属性)是必要的。 <local:MyControl Foreground="Red" Background="#FF008080"/>
和Background
会自动应用于控件。但您也可以将其他控件属性绑定到这些颜色/画笔属性。
Foreground