3 проблемы в моем WPF (оконном телефоне) простой проект. Я потратил много времени, решая его, но никакого конкретного результата не найдено.WPF: как вызвать метод, установив тег динамически созданных кнопок
В моем файле cs я создал кучу динамических кнопок ... Я создал с циклом for и установил теги для каждой динамической кнопки.
My cs Код файла находится здесь.
private void Grid_View_Btn_1_Click(object sender, System.Windows.RoutedEventArgs e)
{
//Grid ButtonsAddition
Dispatcher.BeginInvoke(() =>
{
string[] Trade = new string[] { "Portfolio Display", "Trade Idea Entry", "Trade Idea Monitor", "Historical Performance", "Intraday Performance", "Stock Performance" };
StackPanel panel = new StackPanel();
panel.Orientation = System.Windows.Controls.Orientation.Vertical;
//panel.HorizontalAlignment = System.Windows.HorizontalAlignment.Stretch;
//panel.VerticalAlignment = System.Windows.VerticalAlignment.Top;
int i;
for (i = 0; i < Trade.Length; i++)
{
Button btn = new Button() { Content = Trade[i] };
btn.Margin = new Thickness(0, -10, 0, -10);
var brush = new ImageBrush();
brush.ImageSource = new BitmapImage(new Uri("C:/Users/HafizArslan/Documents/Visual Studio 2012/Projects/AimPass/AimPass/Images/tabbar_btn_blue.png", UriKind.Relative));
btn.Background = brush;
btn.Width = 190;
btn.Height = 75;
btn.FontSize = 14;
btn.FontWeight = light;
btn.FontStretch = Fill;
btn.HorizontalAlignment = HorizontalAlignment.Center;
btn.VerticalAlignment = System.Windows.VerticalAlignment.Stretch;
// btn.CornerRadius = new CornerRadius(15);
btn.BorderThickness = new Thickness(1, 1, 1, 1);
btn.Tag = i.ToString();
btn.Click += new RoutedEventHandler(abc_click);
panel.Children.Add(btn);
}
grid.Children.Add(panel);
});
}
private void abc_click(object sender, EventArgs e)
{
}
Имеются 6 кнопок. проблема в том, что я хочу выполнять разные действия с помощью кнопки ... Я установил теги, но я не знаю, как я могу получить доступ к действиям с помощью кнопок Tag ..?
Я имею в виду, я хочу что-то вроде этого ... !!
private void abc_click(object sender, EventArgs e)
{
// If(btn.Tag==1)
{
//Some Code Here
}
else
if(btn.Tag==2) {
//Perform other Function
}
} Etc.....?
и другая проблема, я бы сделал изображение brush..Assign точный путь изображения ... для каждого созданного фона кнопки .... Но изображение не прилагается ...
Пожалуйста, скажите мне об этих 2 проблемах ...
Предлагаю изменить инфраструктуру и обработать привязку данных/ItemsControl. –
@Felice Pollano Я много работал ... Я думаю, что это не возможно, дорогой .... любезно скажите мне, есть ли у вас решение для этого ... или какой-нибудь метод ..? – Arsal
Предложение, которое я вам дал, - это то, что я сделал бы. –