Просмотров, как Button
, Entry
, Label
, Picker
и т. Д. Может иметь атрибут x:Name
.Как получить имя элемента Xamarin.Forms из объекта?
<Label x:Name="myLabelName" Text="Some text" />
x
определяется как xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
.
Теперь я хочу работать с неклассифицированными предметами, поэтому я использую object
как тип.
Как получить атрибут x:Name
как строку в коде от object
? На этом этапе я не знаю этого типа.
Edit:
Чтобы сделать вещи более ясно, что я хочу опубликовать код. У меня есть нормальный XAML страницу, как это:
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="XamlSamples.HelloXamlPage">
<Label x:Name="myLabelName" Text="Some text" />
</ContentPage>
В файл кода я могу получить атрибут x:Name
, если я nameof(this.myLabelName)
. Но как это сделать, если у вас есть только object
?
public partial class HelloXamlPage
{
public HelloXamlPage()
{
InitializeComponent();
List<string> itemsWhichPassTheCheck = this.Check(new List<object>() { this.myLabelName });
}
}
private List<string> Check(List<object> itemList)
{
// do some check here ...
// here I have only object and I want to get the x:Name attribute thereof
}
Когда вы хотите получить имя атрибута элементов. я имею в виду во время события или при загрузке? –
Не знаю, что вы имеете в виду. Пользователь нажимает кнопку, а затем я хочу сделать некоторые проверки. Здесь мне нужен доступ к атрибуту name. – testing