vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Brandneu! sevEingabe v3.0 - Das Eingabecontrol der Superlative!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Re: [WPF] Mit GridSplitter Spalte nochmal teilen 
Autor: Longri
Datum: 06.10.09 11:39

Ich bitte dich diese Lösung nicht einfach zu übernehmen, sondern darüber nachzudenken was Passiert hier.
XAML:
<Window x:Class="Window3"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window3" Height="300" Width="300">
    <!--Top Grid-->
    <Grid Height="45" VerticalAlignment="Top">
        <Grid Height="612" Margin="0,0,0,-610" Name="Grid1" _
          VerticalAlignment="Bottom">
            <Grid.ColumnDefinitions>
                <ColumnDefinition x:Name="Grid1Column1" Width="139"/>
                <ColumnDefinition x:Name="Grid1Column2" Width="139"/>
            </Grid.ColumnDefinitions>
            <Label Background="Yellow" Grid.Column="0"/>
            <GridSplitter Grid.Column="0" Width="10" />
            <Label Background="Green" Grid.Column="1"/>
            <Grid Name="Grid2" Background="Black" Grid.Column="1" >
                <Grid.RowDefinitions>
                    <RowDefinition Height="*"/>
               </Grid.RowDefinitions>
 
                <Grid> <!--Neus Grid in der rechten Spalte-->
                    <Grid.RowDefinitions>
                        <RowDefinition x:Name="Grid2Row1" Height="306*" />
                        <RowDefinition x:Name="Grid2Row2" Height="306*" />
                    </Grid.RowDefinitions>
                    <Label Background="Aqua" Grid.RowSpan="1" />
                    <Label Background="Red" Grid.Row="1" Grid.RowSpan="1" />
                    <GridSplitter Height="10" HorizontalAlignment="Stretch" _
                      Background="Beige" VerticalAlignment="Bottom" />
                </Grid><!--Ende Neus Grid in der rechten Spalte-->
 
                <!--Beweglicher Knoten Punkt-->
                <Ellipse Width="30" Height="30" Fill="GreenYellow" Grid.Row="0" _
                  Grid.Column="0" Grid.ColumnSpan="1" Grid.RowSpan="1" 
                         VerticalAlignment="Bottom" HorizontalAlignment="Left" _
                         Margin="-21,0,0,294"  x:Name="MyKnoten" />
                <!--Ende Beweglicher Knoten Punkt-->
 
 
            </Grid>
        </Grid>
    </Grid>
 
 
</Window>
VB:
    Private _altPoint As Point
    Private _divHori As Double
    Private _divVerti As Double
    Private Sub MyKnoten_PreviewMouseMove(ByVal sender As Object, ByVal e As _
      System.Windows.Input.MouseEventArgs) Handles MyKnoten.PreviewMouseMove
 
        'Abfragen ob Mousetase gedrückt
        If e.LeftButton Then
            Dim actPoint As Point = e.GetPosition(Grid1)
 
            _divHori = _altPoint.X - actPoint.X
            _divVerti = _altPoint.Y - actPoint.Y
 
            Console.WriteLine(_divHori & " , " & _divVerti)
 
 
            ' Grid berechnen
            Grid1Column1.Width = New GridLength(Grid1Column1.Width.Value - _
              _divHori, GridUnitType.Pixel)
            Grid1Column2.Width = New GridLength(Grid1Column2.Width.Value + _
            _divHori, GridUnitType.Pixel)
 
            Grid2Row1.Height = New GridLength(Grid2Row1.Height.Value - _
              _divVerti, GridUnitType.Pixel)
            Grid2Row2.Height = New GridLength(Grid2Row2.Height.Value + _
            _divVerti, GridUnitType.Pixel)
 
 
            'MyKnoten noch Vertikal verschieben!
            '  Da der Knoten links an das Grid gebunden ist verschiebt er sich
            '  Automatisch mit dem ändern der GridLength.
            '  Bei der Vertikalen Verschiebung muss die Margin Eigenschaft von 
            ' MyKnoten angepasst werden.
            Dim MyKnotenMargin As Thickness = MyKnoten.Margin
            MyKnotenMargin.Bottom += _divVerti
            MyKnoten.Margin = MyKnotenMargin
 
        End If
 
        _altPoint = e.GetPosition(Grid1)
    End Sub


__________________________________________________________________________
Ein Programmierer ist eine Maschine die Koffein in Programmcode umwandelt!
Und Bier in Bug?s

May the source code be with you.

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
[WPF] Mit GridSplitter Spalte nochmal teilen1.806gegy06.10.09 07:50
Re: [WPF] Mit GridSplitter Spalte nochmal teilen1.208Longri06.10.09 09:29
Re: [WPF] Mit GridSplitter Spalte nochmal teilen1.228gegy06.10.09 09:52
Re: [WPF] Mit GridSplitter Spalte nochmal teilen1.267Longri06.10.09 10:01
Re: [WPF] Mit GridSplitter Spalte nochmal teilen1.135gegy06.10.09 10:04
Re: [WPF] Mit GridSplitter Spalte nochmal teilen1.167Longri06.10.09 10:32
Re: [WPF] Mit GridSplitter Spalte nochmal teilen1.178gegy06.10.09 10:47
Re: [WPF] Mit GridSplitter Spalte nochmal teilen1.474Longri06.10.09 11:39
Re: [WPF] Mit GridSplitter Spalte nochmal teilen1.152gegy06.10.09 11:41

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel