Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
DataGrid zur selectierten Zeile scrollen
Fr3dd1
myCSharp.de - Member



Dabei seit:
Beiträge: 106

Themenstarter:

DataGrid zur selectierten Zeile scrollen

beantworten | zitieren | melden

Hallo zusammen,

ich habe mal wieder eine kurze Frage:
Ich habe ein DataGrid mit mehreren Zeilen gefüllt (ObservableCollection Bindung)
Jetzt besteht folgendes Problem: Die selektierte Zeile (ebenfalls über Bindung) ist außerhalb des sichtbaren Bereises des DataGrid (zu weit unten, kann man allerdings per Balken hinscrollen). Gibt es eine einfache Eigenschaft beim DataGrid, wo ich sagen kann, dass die selektierte Zeile auf jedenfall im sichtbaren Bereich ist?

Gruß Fr3dd1
private Nachricht | Beiträge des Benutzers
GG71
myCSharp.de - Member



Dabei seit:
Beiträge: 75
Herkunft: Stuttgart.de

beantworten | zitieren | melden

Moin,

nicht über XAML aber über Code:
wpf+datagrid+autoscroll

Ciao:
GG ;-)
Ciao:
GG ;-)
private Nachricht | Beiträge des Benutzers
michlG
myCSharp.de - Experte

Avatar #avatar-2909.png


Dabei seit:
Beiträge: 3.430
Herkunft: Naturns - Südtirol - Italien

beantworten | zitieren | melden

Hallo Fr3dd1,

entweder du machst es per Code wie von GG71 gesagt, aber dann hast du ein Problem dass du die MVVM-Regeln brechen musst.

Oder du machst es über ein AttachedProperty was IMHO der schönere Weg wäre.
Siehe: ListBox automatically scroll CurrentItem into view

Der Post in meinen Blog beschreibt wie man es erreichen kann dass in der ListBox immer das CurrentItem der ObservableCollection im sichtbaren Bereich ist.
Das ist doch das was du willst oda?

Gruß
Michael
private Nachricht | Beiträge des Benutzers
zero_x
myCSharp.de - Member

Avatar #avatar-2567.gif


Dabei seit:
Beiträge: 1.044
Herkunft: Koblenz

beantworten | zitieren | melden

Hallo michlG,

von MVVM ist hier nicht die Rede. Der Fragensteller hat davon nichts gesagt. Ich gehe davon aus, dass es für den Fragensteller eher noch mehr Fragen aufwirft. Das möchten wir ja nicht.


Hallo Fr3dd1,

das einfachste wäre an der Stelle mit ScrollIntoView zur gewünschten Stelle zu scrollen.

zero_x
zero_x | myCSharp.de - gemeinsam mehr erreichen

Für längere Zeit inaktiv.
private Nachricht | Beiträge des Benutzers
Fr3dd1
myCSharp.de - Member



Dabei seit:
Beiträge: 106

Themenstarter:

beantworten | zitieren | melden

Ich würde die Methode mit ScrollIntoView bevorzugen. Da gibt es allerdings ein Problem: Wenn ich im CodeBehind ein neues DataGrid anlege, hat dieses DataGrid die Methode "ScrollIntoView", wenn ich mein im XAML Code erstelltes DataGrid über den Namen ansteuere, hat dieses die Methode nicht. Woran liegt das?

EDIT: Habe noch eine weitere Frage, passt zwar nicht 100% zum Thema aber ich hoffe dass das nur eine Kleinigkeit ist. Und zwar habe ich zwei Bilder zu per XAML aus eine Ressource hinzugefügt. Diese werden im Designer auch angezeigt, wenn ich das Window allerdings Debugge, sind die Grafiken einfach weg. Jemand eine Idee was ich da falsch mache? <- Gelöst: Wird nur angezeigt, wenn ich das kompilierte Modul aufrufe.
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Fr3dd1 am .
private Nachricht | Beiträge des Benutzers
Fr3dd1
myCSharp.de - Member



Dabei seit:
Beiträge: 106

Themenstarter:

beantworten | zitieren | melden

Habe die Probleme vor ein paar Tagen gelöst.
1. Ich konnte die "ScrollIntoView" Methode auf einmal benutzen, habe das innerhalb des SelectionChanged Events des DataGrids getan.

2. Bilder die aus Ressourcen geladen werden, werden anscheinend nicht beim Debuggen geladen. Wenn man das kompilierte Modul aufruft, werden die Bilder angezeigt (falsche VS Einstellung meinerseits vielleicht?)

Gruß Fr3dd1
private Nachricht | Beiträge des Benutzers
GG71
myCSharp.de - Member



Dabei seit:
Beiträge: 75
Herkunft: Stuttgart.de

beantworten | zitieren | melden

Hi,

such' mal nach Snoop - das Tool kann Deine Bindings-Fehler darstellen. Wahrscheinlich stimmt was mit 'm Image.Source (relative Pfadangabe) nicht?!?
Ciao:
GG ;-)
private Nachricht | Beiträge des Benutzers