C# 将TextBlock绑定到MouseEventHandler
我试图将一个简单的字符串绑定到一个文本块,但它没有任何作用C# 将TextBlock绑定到MouseEventHandler,c#,wpf,xaml,binding,C#,Wpf,Xaml,Binding,我试图将一个简单的字符串绑定到一个文本块,但它没有任何作用 public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); this.MouseMove += new MouseEventHandler(window_MouseMove); } public void window_MouseMove (object
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
this.MouseMove += new MouseEventHandler(window_MouseMove);
}
public void window_MouseMove (object sender, MouseEventArgs e)
{
Point mouseXY = Mouse.GetPosition(this);
string mouseXYstring = mouseXY.ToString();
}
}
还有XAML…:
<TextBlock x:Name="MousePosition" HorizontalAlignment="Right"
VerticalAlignment="Top" Width="200" Text="{Binding Path=mouseXYstring}" />
我试着把它放在一个文本框里,它能正常工作。这是我的代码
//mousemove inside my Textbox
private void TextBox_MouseMove_1(object sender, MouseEventArgs e)
{
//txt is the name oh my textbox
txt.Text = e.GetPosition(this).ToString();
}
//mousemove in my windows
private void wn_MouseMove(object sender, MouseEventArgs e)
{
//txt is the name oh my textbox
txt.Text = e.GetPosition(this).ToString();
}
但是在你的例子中,你使用一个textblock并尝试这个代码
public void window_MouseMove (object sender, MouseEventArgs e)
{
MousePosition.text = e.GetPosition(this).ToString();
}
这就解决了问题,我在活动前错过了“e”,所以我并没有用我的GetPosition给MouseEventArgs打电话。
//mousemove inside my Textbox
private void TextBox_MouseMove_1(object sender, MouseEventArgs e)
{
//txt is the name oh my textbox
txt.Text = e.GetPosition(this).ToString();
}
//mousemove in my windows
private void wn_MouseMove(object sender, MouseEventArgs e)
{
//txt is the name oh my textbox
txt.Text = e.GetPosition(this).ToString();
}
public void window_MouseMove (object sender, MouseEventArgs e)
{
MousePosition.text = e.GetPosition(this).ToString();
}