如何从对象中获取Xamarin.Forms元素的名称?

时间:2016-12-02 13:07:11

标签: c# xaml xamarin xamarin.forms

ButtonEntryLabelPicker等视图可以有x:Name属性。

<Label x:Name="myLabelName" Text="Some text" />

x定义为xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"

现在我想使用未分类的项目,因此我使用object作为类型。

如何在x:Name的代码中将object属性作为字符串获取?我不知道现阶段的类型。

修改

为了使事情更清楚,我想发布一些代码。我有一个像这样的普通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
}

0 个答案:

没有答案