我是编程新手,需要澄清以下内容......
我有一个文本框,其中自动生成文本。 要求:如果我现在突出显示文本框中的文本,则应打开一个新的wpf窗口。 (这需要在附加属性/非事件上使用wpf命令完成)
谢谢:) 请给我详细的回复代码..
答案 0 :(得分:0)
这是一个非常奇怪的要求,但可以使用行为来完成。以下是一些示例标记:
<Grid>
<TextBox Text="This is some text">
<i:Interaction.Behaviors>
<local:NewWindowOnSelectBehavior/>
</i:Interaction.Behaviors>
</TextBox>
</Grid>
以下是出于演示目的而显示消息框的行为:
public class NewWindowOnSelectBehavior : Behavior<TextBox>
{
protected override void OnAttached()
{
AssociatedObject.SelectionChanged += (s, e) =>
{
if (!string.IsNullOrEmpty(AssociatedObject.SelectedText))
MessageBox.Show("New Window");
};
}
}
此示例使用行为。如果您不熟悉行为,请安装Expression Blend 4 SDK并添加此命名空间:
xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity"
并将System.Windows.Interactivity
添加到您的项目中。