我把我做了一个wpf应用程序里面有很多控件,我在另一个wpf项目中引用了这个应用程序,出现了个问题,可以实例化某个用户控件但是只能访问后台代码不能访问前台的控件。
这个是在其他类库中调用出现的问题:
我现在把转向到的前台贴图:
第一张图有问题,看不见。
我给你的回答是,XAML里面定义创建的对象都是 Internal 访问权限,所以你在另一个项目里面是无法直接访问XAML的对象的。你要么在C#里面像你一样,声明个public属性来访问;要么你就全部用C#代码来构建你的可视窗体或者控件。
还有种方式就是在运行时通过LogicalTreeHelper或者VisualTreeHelper来在逻辑树和可视树中遍历,以便找到你要的对象。