J'ai un problème de liaison de données dans un bloc Texte. Ce que je veux faire est que chaque fois qu'il y a une exception qui se produit dans une classe que je veux afficher dans Text Block mais pour une raison quelconque, il ne se disperse pas.Liaison de données dans WPF
Main.xaml
<Window x:Class="TestingWPF.Main"
<Window.Resources>
<ObjectDataProvider x:Key="showErr" ObjectType="{x:Type local:ErrorLog}" MethodName="GetError"/>
</Window.Resources>
<Frame Name="frame1" Width="620"/>
<Button Name="button1" Click="button1_Click">
<TextBlock Name="txtBlock6" Text="{Binding Source={StaticResource showErr}}"/>
</Window>
Main.xaml.cs
namespace TestingWPF
{
public partial class Main : Window
{
private void button1_Click(object sender, RoutedEventArgs e)
{
frame1.Source =new Uri("/Page1.xaml", UriKind.Relative);
}
}
public class ErrorLog
{
private string errorInfo { get; set; }
public string GetError(string errorMessage)
{
return errorInfo =errorMessage;
}
}
}
Page1.xaml
<Page x:Class="TestingWPF.Page1"
<Button Name="button1" Click="button1_Click">
<Button Name="button2" Click="button2_Click">
</Page>
Page1.xaml.cs
namespace TestingWPF
{
public partial class Page1 : Page
{
ErrorLog errorLog = new ErrorLog();
private void button1_Click(object sender, RoutedEventArgs e)
{
someMethod1();
}
private void someMethod1()
{
try
{
}
catch(Expection e)
{
errorLog.GetError(e.toString());// This is not dispalying
}
}
private void button2_Click(object sender, RoutedEventArgs e)
{
someMethod2();
}
private void someMethod2()
{
Class2 class2 = new Class2();
class2.foo();
}
}
}
Class2.cs
namespace TestingWPF
{
class Class2
{
ErrorLog errorLog = new ErrorLog();
public void foo()
{
try
{
}
catch(Expection e)
{
errorLog.GetError(e.toString());// This is not dispalying
}
}
}
}
Avez-vous regardé les exemples sur le MSDN - [ici] (http://msdn.microsoft.com/en-us/library/system.windows.data.objectdataprovider.aspx) par exemple? – ChrisF