使发送的对象在xamarin.forms CS文件中可用

时间:2019-01-22 14:08:05

标签: xaml xamarin xamarin.forms

我有一个新闻列表,单击新闻时,它将用户转到具有特定newsitem的新页面。

在新闻项目页面上,我想操纵发送的对象,以便可以更改该对象内的值。

我的ItemTappedEvent看起来像这样

public void goToEvent(object sender, ItemTappedEventArgs e)
    {
        if (e.Item == null)
        {
            return;
        }

        var selectedItem = e.Item; // model
        Navigation.PushAsync(new eventItem(selectedItem)); // pass the selected whole item from list to DetaiPage 'selectedItem' using constructor
        ((ListView)sender).SelectedItem = null;

    }

我的NewsItem页面将其作为这样的c#对象处理

public eventItem(object selectedItem)
    {

        this.BindingContext = selectedItem;
        InitializeComponent();

    }

在我的“ selectedItem”中是一个名为“ product_wheelchair”的值 如果其值为“ true” 我是否要将其更改为“ Ja”。我该如何转换对象“ selectedItem”,使之成为可能。

谢谢!

1 个答案:

答案 0 :(得分:1)

您需要像这样将对象强制转换为类:

var mySelectedItem = selectedItem as myClass

之后,您可以访问myClass中可用的属性/字段。显然,如果它们是private,则需要使它们public可以访问。