WPF: Column oder Row ermitteln
Wie kann man die Spalte oder Zeile eines WPF Framework Elements in einem Grid ermittln?
Lösung:
Mit Grid.GetColumn oder Grid.GetRow(Element) bekommt man die aktuelle Position des FrameworkElement in einem Grid
int iCol = Grid.GetColumn(child); |
Code Beispiel
private void Mitarbeiter_aus_Spalte_Entfernen(int IDMitarbeiter,int ColNr) { //---------------------< Mitarbeiter_aus_Spalte_Entfernen() >--------------------- //*einen eingeplanten Mitarbeiter aus dem Vorrat der Tagesspalte loeschen foreach( FrameworkElement child in Grid_Mitarbeiter.Children) { int iCol = Grid.GetColumn(child); if (iCol == ColNr) { //----< in_ColNr >---- if(child.GetType()==typeof(Border)) { Border cell = (Border)child; if (cell.Child != null) { //--< Stackpanel >-- StackPanel stackpanel = cell.Child as StackPanel; foreach(Button btn in stackpanel.Children) { string sName = btn.Name; int btn_IDMitarbeiter = clsSchichtplan.berechne_IDMitarbeiter_aus_String(sName); if(btn_IDMitarbeiter==IDMitarbeiter) { //< delete_button > stackpanel.Children.Remove(btn); break; //</ delete_button > } } //--</ Stackpanel >-- } } //----</ in_ColNr >---- } }
//---------------------</ Mitarbeiter_aus_Spalte_Entfernen() >--------------------- }
|