(0) exportieren Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

Window.RestoreBounds-Eigenschaft

Ruft die Größe und Position eines Fensters vor dem Minimieren oder Maximieren ab.

Namespace:  System.Windows
Assembly:  PresentationFramework (in PresentationFramework.dll)

member RestoreBounds : Rect with get

Eigenschaftswert

Typ: System.Windows.Rect
Ein Rect, das die Größe und Position eines Fensters vor dem Minimieren oder Maximieren angibt.

Das Wiederherstellungsrechteck ist der vom Fenster eingenommene Bereich, bevor dieses minimiert wurde oder maximiert wurde. Mithilfe von RestoreBounds können Sie die letzte Größe und Position eines Fensters vor dem Schließen einer Anwendung speichern und diese Werte beim nächsten Start der Anwendung abrufen, um das Fenster so wiederherzustellen, wie der Benutzer es beim letzten Mal verwendet hat.

Wenn Sie RestoreBounds abfragen, bevor das Fenster angezeigt wird oder nachdem dieses geschlossen wurde, wird Empty zurückgegeben.

HinweisHinweis

Sie können diese Eigenschaft nicht abrufen, wenn ein Fenster in einem Browser gehostet wird.

Im folgenden Beispiel werden RestoreBounds und ein isolierter Speicher verwendet, um sicherzustellen, dass die Größe und Position eines Fensters mit denen beim letztmaligen Anzeigen des Fensters identisch sind.


<Window x:Class="WindowRestoreBoundsSnippets.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="WindowRestoreBoundsSnippets"
	Closing="MainWindow_Closing"
    >


...


</Window>




Imports System
Imports System.ComponentModel
Imports System.IO
Imports System.IO.IsolatedStorage
Imports System.Windows



...


Partial Public Class MainWindow
    Inherits Window

    Private filename As String = "settings.txt"

    Public Sub New()
        InitializeComponent()

        ' Refresh restore bounds from previous window opening
        Dim storage As IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForAssembly()
        Try
            Using stream As New IsolatedStorageFileStream(Me.filename, FileMode.Open, storage)
                Using reader As New StreamReader(stream)

                    ' Read restore bounds value from file
                    Dim restoreBounds As Rect = Rect.Parse(reader.ReadLine())
                    Me.Left = restoreBounds.Left
                    Me.Top = restoreBounds.Top
                    Me.Width = restoreBounds.Width
                    Me.Height = restoreBounds.Height
                End Using
            End Using
        Catch ex As FileNotFoundException
            ' Handle when file is not found in isolated storage, which is when:
            ' * This is first application session
            ' * The file has been deleted
        End Try

    End Sub

    Private Sub MainWindow_Closing(ByVal sender As Object, ByVal e As CancelEventArgs)
        ' Save restore bounds for the next time this window is opened
        Dim storage As IsolatedStorageFile = IsolatedStorageFile.GetUserStoreForAssembly()
        Using stream As New IsolatedStorageFileStream(Me.filename, FileMode.Create, storage)
            Using writer As New StreamWriter(stream)
                ' Write restore bounds value to file
                writer.WriteLine(Me.RestoreBounds.ToString())
            End Using
        End Using
    End Sub
End Class



using System;
using System.ComponentModel;
using System.IO;
using System.IO.IsolatedStorage;
using System.Windows;



...


public partial class MainWindow : Window {

  string filename = "settings.txt";

  public MainWindow() {
    InitializeComponent();

    // Refresh restore bounds from previous window opening
    IsolatedStorageFile storage = IsolatedStorageFile.GetUserStoreForAssembly();
    try {
      using (IsolatedStorageFileStream stream = new IsolatedStorageFileStream(this.filename, FileMode.Open, storage))
      using (StreamReader reader = new StreamReader(stream)) {

        // Read restore bounds value from file
        Rect restoreBounds = Rect.Parse(reader.ReadLine());
        this.Left = restoreBounds.Left;
        this.Top = restoreBounds.Top;
        this.Width = restoreBounds.Width;
        this.Height = restoreBounds.Height;
      }
    }
    catch (FileNotFoundException ex) {
      // Handle when file is not found in isolated storage, which is when:
      // * This is first application session
      // * The file has been deleted
    }

  }

  void MainWindow_Closing(object sender, CancelEventArgs e) {
    // Save restore bounds for the next time this window is opened
    IsolatedStorageFile storage = IsolatedStorageFile.GetUserStoreForAssembly();
    using (IsolatedStorageFileStream stream = new IsolatedStorageFileStream(this.filename, FileMode.Create, storage))
    using (StreamWriter writer = new StreamWriter(stream)) {
      // Write restore bounds value to file
      writer.WriteLine(this.RestoreBounds.ToString());
    }
  }
}


.NET Framework

Unterstützt in: 4.5, 4, 3.5, 3.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

  • UIPermission 

    für die Berechtigung zum Abfragen der Größe und Position für das umschließende Rechteck eines Fensters. Zugeordnete Enumeration: AllWindows.

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

Es werden nicht alle Versionen sämtlicher Plattformen von .NET Framework unterstützt.. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Community-Beiträge

HINZUFÜGEN
Anzeigen:
© 2014 Microsoft