Hirdetés

Új hozzászólás Aktív témák

  • trisztan94

    őstag

    Egy ténylegesen C# kérdés most:

    XAML-ben a definiált GRID ahogyan észrevettem egyáltalán nem úgy működik, mint a Windows Forms-os.

    3 sorban van összesen 12 gomb, random gomboknak szeretném a Content attribútumát változtatni, de sehogyan sem tudok rá hivatkozni..

    <Grid x:Name="buttons_container" HorizontalAlignment="Center" VerticalAlignment="Bottom">
    <Grid.RowDefinitions>
    <RowDefinition Height="70"/>
    <RowDefinition Height="70"/>
    <RowDefinition Height="70"/>
    </Grid.RowDefinitions>

    <Grid x:Name="buttons_first_row" Grid.Row="0" Width="600">
    <Grid.ColumnDefinitions>
    <ColumnDefinition Width="150" />
    <ColumnDefinition Width="150" />
    <ColumnDefinition Width="150" />
    <ColumnDefinition Width="150" />
    </Grid.ColumnDefinitions>
    <Button HorizontalAlignment="Center" Grid.Column="0" Content="" Foreground="White" Height="auto" Width="150" />
    <Button HorizontalAlignment="Center" Grid.Column="1" Content="" Foreground="White" Height="auto" Width="150" />
    <Button HorizontalAlignment="Center" Grid.Column="2" Content="" Foreground="White" Height="auto" Width="150" />
    <Button HorizontalAlignment="Center" Grid.Column="4" Content="" Foreground="White" Height="auto" Width="150" />
    </Grid>

    <Grid x:Name="buttons_second_row" Grid.Row="1" Width="600">
    <Grid.ColumnDefinitions>
    <ColumnDefinition Width="150" />
    <ColumnDefinition Width="150" />
    <ColumnDefinition Width="150" />
    <ColumnDefinition Width="150" />
    </Grid.ColumnDefinitions>
    <Button HorizontalAlignment="Center" Grid.Column="0" Content="" Foreground="White" Height="auto" Width="150" />
    <Button HorizontalAlignment="Center" Grid.Column="1" Content="" Foreground="White" Height="auto" Width="150" />
    <Button HorizontalAlignment="Center" Grid.Column="2" Content="" Foreground="White" Height="auto" Width="150" />
    <Button HorizontalAlignment="Center" Grid.Column="4" Content="" Foreground="White" Height="auto" Width="150" />
    </Grid>

    <Grid x:Name="buttons_third_row" Grid.Row="2" Width="600">
    <Grid.ColumnDefinitions>
    <ColumnDefinition Width="150" />
    <ColumnDefinition Width="150" />
    <ColumnDefinition Width="150" />
    <ColumnDefinition Width="150" />
    </Grid.ColumnDefinitions>

    <Button HorizontalAlignment="Center" Grid.Column="0" Content="" Foreground="White" Height="auto" Width="150" />
    <Button HorizontalAlignment="Center" Grid.Column="1" Content="" Foreground="White" Height="auto" Width="150" />
    <Button HorizontalAlignment="Center" Grid.Column="2" Content="" Foreground="White" Height="auto" Width="150" />
    <Button HorizontalAlignment="Center" Grid.Column="4" Content="" Foreground="White" Height="auto" Width="150" />
    </Grid>
    </Grid>

    InterfaceDesigner-en próálható.

    Tehát az a lényeg, hogy két random számom van: x és y. Az x az oszlopokat, az y a sorokat jelöli.

    Ha pl. a 3-mat dob ki, akkor a 3. sor x. elemét szeretném módosítani.

    Próbáltam így C#-ban:
    buttons_first_row.Children.ElementAt(2)...

    ez szépen meg is találja a nekem kellő button-t (jelen esetben az első sor 3.), de módosítani sehogy sem tudom, ugyanis nincs .Content tulajdonsága a System.Windows.UIElement-nek.

    Hogyan tudnám ezt szépen megoldani? Adjak minden gombnak egyedi nevet, aztán egy baromi nagy switch elágazással jelöljem ki őket?

    https://heureka-kreativ.hu

Új hozzászólás Aktív témák