0


0

ナビゲーションURIへのC#列挙値の追加

Windows Phoneアプリケーションを開発しています。 私はここで質問をします。シルバーライトの質問だと思うからです。

App.xamlで次のナビゲーションURIを定義しました。


そして、次のC#列挙型:

public enum TourismItemType
{
    Destination = 1,
    PointOfInterest = 2,
    Content = 3
}

MappedUri = "/ Views / Tourism / Common.xaml?Type = 1 "の '* 1 'を TourismItemType.Destination *から取得した値で変更したい。

私はそれができると思う:

そして、プログラムでそれを行いますが、XAMLでTourismType.Destinationによって表される値にアクセスする方法はありますか?

ありがとう。

1 Answer


2


これは、enumの値を文字列として渡し、OnNavigatedToイベントで列挙値に解析することで簡単に実現できます。

MappedUri="/Views/Tourism/Common.xaml?Type=PointOfInterest"

そしてcommon.xamlで:

string selectedType = "";
if (NavigationContext.QueryString.TryGetValue("Type", out selectedType))
{
    var tit = Enum.Parse(typeof (TourismItemType), selectedType, true);

    // do something with `tit`...
}