我正在使用WebClient從xml文件解析數據。在DownloadStringCompleted方法中,我有一個字符串,它被解析,我想傳入一個單擊事件處理程序。我想要點擊事件來打開我的應用程序的市場細節。爲此,我需要一個解析的字符串,它是一個GUID並將其放置在事件處理程序中。我試圖谷歌它並沒有發現。我只是無法弄清楚如何去做。將解析的字符串傳遞到單擊事件處理程序中
任何幫助將不勝感激。謝謝!
下面的代碼:
public void client_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
XDocument moreApps = XDocument.Parse(e.Result);
morePageAppList.ItemsSource = from Apps in moreApps.Descendants("App")
select new MoreApps
{
MoreImage = Apps.Element("link").Value,
Price = Apps.Element("price").Value,
Title = Apps.Element("title").Value
};
var link = (from Apps in moreApps.Descendants("App")
select new MoreApps
{
AppUri = (string)Apps.Element("marketplace").Value
}).Single();
string appLink = link.AppUri;
}
private void App_Name_Click(object sender, RoutedEventArgs e)
{
MarketplaceDetailTask marketplaceDetailTask = new MarketplaceDetailTask();
marketplaceDetailTask.ContentIdentifier = "Marketplace GUID";
marketplaceDetailTask.Show();
}
更新的代碼:
morePageAppList.ItemsSource = from Apps in moreApps.Descendants("App")
select new MoreApps
{
MoreImage = Apps.Element("link").Value,
Price = Apps.Element("price").Value,
Title = Apps.Element("title").Value
};
var link = (from Apps in moreApps.Descendants("App")
select new MoreApps
{
AppUri = (string)Apps.Element("marketplace").Value
}).FirstOrDefault();
appLink = link.AppUri;
}
private void App_Name_Click(object sender, RoutedEventArgs e)
{
ShowMarket(appLink);
}
private void ShowMarket(string id)
{
MarketplaceDetailTask marketplaceDetailTask = new MarketplaceDetailTask();
marketplaceDetailTask.ContentIdentifier = id;
marketplaceDetailTask.Show();
}
你在哪裏創建按鈕?如果您通過綁定將該按鈕的「內容」賦予,您可以給它一個AppUri的「標籤」。 – 2012-01-05 20:57:30
我將如何使用標籤? – 2012-01-05 21:35:15
在您的點擊事件中,var button =(Button)sender; var moreapps =(MoreApps)button.Tag; MessageBox.Show(moreapps.AppUri); – 2012-01-05 21:38:33