wpf - una - obtener fila seleccionada c#
¿Cómo acceder mediante programación a Control en cuadrícula WPF por índice de fila y columna? (4)
Una vez que se han agregado los controles a una cuadrícula de WPF, ¿hay alguna manera de acceder a ellos programáticamente por fila y / o índice de columna? Algo como:
var myControl = (object)MyGrid.GetChild(int row, int column);
... donde GetChild
es el método que desearía tener!
La propiedad Children del objeto grid le dará una colección de todos los elementos secundarios de la cuadrícula (de la clase Panel).
En cuanto a obtener las coordenadas en la cuadrícula, mira los métodos estáticos en la clase Grid (GetRow () & GetColumn ()).
Espero que te lleve en la dirección correcta.
No hay un método incorporado para esto, pero puede hacerlo fácilmente buscando en la colección Children:
myGrid.Children
.Cast<UIElement>()
.First(e => Grid.GetRow(e) == row && Grid.GetColumn(e) == column);
Sistema :: Windows :: Controles :: Grid ^ myGrid = nullptr; Sistema :: Windows :: Controles :: UserControl ^ pUserControl = nullptr;
myGrid = m_DlgOwnedObjAdmin->GrdProperties;
if (myGrid->Children->Count > 0)
{
pUserControl = (System::Windows::Controls::UserControl^)myGrid->Children->default[0];
if (pUserControl != nullptr)
{
if (bValue == true)
pUserControl->Visibility = System::Windows::Visibility::Visible;
else
pUserControl->Visibility = System::Windows::Visibility::Collapsed;
}
}
Esta respuesta te ayudará
int rowIndex = Grid.GetRow(myButton);
RowDefinition rowDef = myGrid.RowDefinitions[rowIndex];