在 XAML 和 C# 中使按钮“公共”
本文关键字:按钮 公共 XAML | 更新日期: 2023-09-27 18:33:26
我正在使用Xamarin平台构建移动应用程序。在解决方案中,有一个core
项目,然后是特定于平台的项目,在这种情况下,.ios
和.android
。在我的核心项目中,我有一个带有按钮元素的 XAML 布局。My_App.Core.HomePage.xaml
<Button x:Name="LoginIcon"
Image="key.png"
HorizontalOptions="Center"
VerticalOptions="CenterAndExpand"
Grid.Row="9" Grid.Column="3" Grid.ColumnSpan="3" />
我在这些项目中有一些特定于平台的逻辑,结果我想更改这些按钮的来源。
My_App.ios.customfile.cs:
My_App.HomePage.LoginIcon.Source = ImageSource.FromFile("bluetoothg.png");
当然,由于按钮是在 XAML 中定义的,LoginIcon
在此文件中不可见,因此如何使此 XAML 元素public
,以便我可以从解决方案中引用核心文件的其他项目中引用它?
x:FieldModifier 命名空间属性指定为命名 XAML 元素生成的字段的访问级别。
在页面上创建一个属性并返回按钮:
public Button PubLoginIcon{ get{ return LoginIcon; } }
但是,我必须说,如果您必须访问另一个页面上的控件,则设计错误,更好的方法是将页面中的功能作为公共功能,在这种情况下,您无需访问控件。