Достать значение из numericUpDown которые находятся в списке List

     List<Control> controls = new List<Control>();

        controls.Add(d1); controls.Add(d2);
        controls.Add(d3); controls.Add(d4);
        controls.Add(d5); controls.Add(d6);
        controls.Add(d7); controls.Add(d8);
        controls.Add(d9); controls.Add(d10);
        controls.Add(d11); controls.Add(d12);
        controls.Add(d13); controls.Add(d14);
        controls.Add(d15); controls.Add(d16);
        controls.Add(d17); controls.Add(d18);
        controls.Add(d19); controls.Add(d20);
        controls.Add(d21); controls.Add(d22);
        controls.Add(d23); controls.Add(d24);
        controls.Add(d25); controls.Add(d26);
        controls.Add(d27); controls.Add(d28);

В списке 28 элементов типа

<xctk:IntegerUpDown Name="d1" Grid.Row="0" Grid.Column="1"   FontSize="14"/>

как достать значения из списка а именно d1.value; d2.value; и т.д


Ответы (2 шт):

Автор решения: aepot

Быть может вот так?

foreach (IntegerUpDown control in controls)
{
    MessageBox.Show(control.value.ToString());
}
→ Ссылка
Автор решения: Bulson

Я не стал делать 28, а всего 3, вот такая разметка

<Grid x:Name="_grid">
    <Grid.RowDefinitions>
        <RowDefinition Height="*"/>
        <RowDefinition Height="*"/>
        <RowDefinition Height="*"/>
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
    <xctk:IntegerUpDown x:Name="_iUpDown1" Grid.Row="0"/>
    <xctk:IntegerUpDown x:Name="_iUpDown2" Grid.Row="1"/>
    <xctk:IntegerUpDown x:Name="_iUpDown3" Grid.Row="2"/>
    <Button x:Name="_button"
            Grid.Row="3"
            Content="OK"/>
</Grid>

Тогда код такой

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();

        _button.Click += Button_Click;
    }

    private void Button_Click(object sender, RoutedEventArgs e)
    {
        //cоздаем словарь в качестве ключа -> имя IntegerUpDown
        Dictionary<string, int?> values = _grid.Children.OfType<IntegerUpDown>()
                                                        .ToDictionary(i => i.Name, i => i.Value);

        //достаем значение по имени нужного IntegerUpDown
        int value = values["_iUpDown2"] ?? 0;
    }
}
→ Ссылка