0
Lorsque j'exécute le code suivant, le bloc de texte ne change pas.TextBlock Databinding
Je suppose que la liaison de données manque dans le code ou XMAL.
XAML
<Window.Resources>
<ObjectDataProvider x:Key="PersonObj" ObjectType="{x:Type local:Person}" MethodName="GetFirstName" />
</Window.Resources>
<Grid>
<!--<TextBlock Margin="26,7,12,0" Name="myTextBlock" Text="{Binding Path=FirstName}" Height="69" VerticalAlignment="Top" />-->
<TextBlock Margin="26,7,12,0" Name="myTextBlock" Text="{Binding FirstName, Source={StaticResource PersonObj}}" Height="69" VerticalAlignment="Top" />
</Grid>
</Window>
CODE
namespace WpfApplication1
{
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
test t = new test();
}
public void testing()
{
test t = new test();
}
}
public class Person
{
public String FirstName { get; set; }
public String LastName { get; set; }
public string GetFirstName()
{
return FirstName;
}
}
}
namespace WpfApplication1
{
class test : Person
{
public test()
{
this.FirstName = "John";
this.LastName = "S";
this.GetFirstName();
}
}
}
Merci
Vous devez donc utiliser ObjectType = "{x: Type local: ClassName}". myTextBlock est un message d'erreur, Comment puis-je l'utiliser dans plusieurs classes. Si l'expcection est survenue dans la classe de test, elle sera affichée sur le formulaire principal, si une erreur est survenue dans la classe test1, elle l'écrasera si quelque chose s'y trouve. – juniorCSharp
je ne suis pas sûr que je suis @ @ @. mais si je comprends bien, je pense que vous appelez le test1 dans votre classe de test n'est-ce pas? alors vous pouvez simplement remplacer la valeur dans la propriété liée à la classe de test – dnr3