2015-08-11 2 views
0

У меня есть объект Trip, который я получаю из списка TripsByTripIds, который я хочу передать в качестве параметра для обработчика событий щелчка изображения ниже. как это передать?Передача класса в качестве аргумента для изображения click event Handler

foreach (Tripclass Trip in TripsByTripIds) 
    { 
     ImageButton imageButton = new ImageButton(); 
     imageButton.ImageUrl = "~/" +Trip.CorridorName+"/"+Trip.Time+"/"+Trip.ImgFileName; 
     imageButton.Height = Unit.Pixel(100); 
     imageButton.Style.Add("padding", "5px"); 
     imageButton.Width = Unit.Pixel(100); 
     imageButton.Click += new ImageClickEventHandler(imageButton_Click); 
     AMSPanel1.Controls.Add(imageButton); 
     AMSPanel1.Height = Unit.Pixel(860); 
    } 

    protected void imageButton_Click(object sender, ImageClickEventArgs fi) 
    { 
     testimage.ImageUrl = ((ImageButton)sender).ImageUrl; 
     lblTime.Text = Trip.Time; 
     lblLocation.Text = Trip.Location; //can't access trip object here 
    }  

ответ

1

Я нашел ответ от одного из постов в переполнение стека другие day.i не сохранили эту связь, хотя. но решение ниже решает мою проблему

foreach (Tripclass Trip in TripsByTripIds) 
    { 
     ImageButton imageButton = new ImageButton(); 
     imageButton.ImageUrl = "~/" + Trip.CorridorName + "/" + Trip.Time + "/" + Trip.ImgFileName; 
     imageButton.Height = Unit.Pixel(100); 
     imageButton.Style.Add("padding", "5px"); 
     imageButton.Width = Unit.Pixel(100); 
     imageButton.Click += new ImageClickEventHandler((a, b) => imageButton_Click(a, b,Trip)); 
     AMSPanel1.Controls.Add(imageButton); 
     AMSPanel1.Height = Unit.Pixel(860); 
    } 

    protected void imageButton_Click(object sender, ImageClickEventArgs e, Tripclass Trip) 
    { 
     testimage.ImageUrl = ((ImageButton)sender).ImageUrl; 
     lblTime.Text = Trip.Time; 
     lblLocation.Text = Trip.Location; //I can access trip object here 
    } 
0

Если она может быть представлена ​​в виде текста, вы можете добавить свою ценность CommandArgument собственности

+0

ReviewTrip - это класс типа ReviewTripDC. Я не думаю, что это может быть представлено как текст. – rampantNinja

+0

@avi, как я вижу, вам нужно только одно свойство 'ReviewTrip.Time' – Backs

+0

, что является примером. Но мне нужно получить доступ к нескольким другим свойствам ReviewTripDC в моем случае. Я не хотел писать все, чтобы он не стал длинным вопросом – rampantNinja