在行为中使用静态资源

时间:2015-05-22 08:33:43

标签: c# wpf

我有一个textbox并添加了一个行为:

<TextBox VerticalContentAlignment="Center" HorizontalContentAlignment="Center" Grid.Row="0" Grid.Column="1"
                 FontSize="22" >
            <Binding Path="IpAddr" ValidatesOnNotifyDataErrors="True">
                <Binding.ValidationRules>
                    <local:IpAddressRule />
                </Binding.ValidationRules>
            </Binding>
            <i:Interaction.Behaviors>
                <behaviors:TextBoxInputMaskBehavior InputMask="{StaticResource InputMaskIp}" PromptChar="0" />
            </i:Interaction.Behaviors>
        </TextBox>

现在我已经移动资源中的TextBoxInputMaskBehavior

<UserControl.Resources>
        <system:String x:Key="InputMaskIp">000.000.000.000</system:String>
        <behaviors:TextBoxInputMaskBehavior x:Key="mask" InputMask="{StaticResource InputMaskIp}" PromptChar="0" />
    </UserControl.Resources>

现在我的问题是,如何将资源绑定到:

<i:Interaction.Behaviors>
    //Will bind resources here.
</i:Interaction.Behaviors>

1 个答案:

答案 0 :(得分:3)

Interaction.Behaviors是一个只读BehaviorCollection,继承自AttachableCollection<Behavior>&amp;你无法设置绑定。