Application.Properties Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém uma coleção de propriedades de escopo de aplicativo.
public:
property System::Collections::IDictionary ^ Properties { System::Collections::IDictionary ^ get(); };
public System.Collections.IDictionary Properties { get; }
member this.Properties : System.Collections.IDictionary
Public ReadOnly Property Properties As IDictionary
Valor da propriedade
Um IDictionary que contém as propriedades do escopo do aplicativo.
Exemplos
O exemplo a seguir mostra como criar e usar uma propriedade de escopo de aplicativo usando Properties.
<Application x:Class="CSharp.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="MainWindow.xaml"
Startup="App_Startup"
>
</Application>
using System;
using System.Windows;
namespace CSharp
{
public partial class App : Application
{
void App_Startup(object sender, StartupEventArgs e)
{
// Parse command line arguments for "/SafeMode"
this.Properties["SafeMode"] = false;
for (int i = 0; i != e.Args.Length; ++i)
{
if (e.Args[i].ToLower() == "/safemode")
{
this.Properties["SafeMode"] = true;
break;
}
}
}
}
}
Imports System.Windows
Namespace VisualBasic
Partial Public Class App
Inherits Application
Private Sub App_Startup(ByVal sender As Object, ByVal e As StartupEventArgs)
' Parse command line arguments for "/SafeMode"
Me.Properties("SafeMode") = False
Dim i As Integer = 0
Do While i <> e.Args.Length
If e.Args(i).ToLower() = "/safemode" Then
Me.Properties("SafeMode") = True
Exit Do
End If
i += 1
Loop
End Sub
End Class
End Namespace
<Window x:Class="CSharp.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Loaded="MainWindow_Loaded"
>
<Grid>
</Grid>
</Window>
using System;
using System.Windows;
using System.Windows.Controls;
namespace CSharp
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
void MainWindow_Loaded(object sender, EventArgs e)
{
// Check for safe mode
if ((bool)Application.Current.Properties["SafeMode"])
{
this.Title += " [SafeMode]";
}
}
}
}
Imports System.Windows
Imports System.Windows.Controls
Namespace VisualBasic
Partial Public Class MainWindow
Inherits Window
Public Sub New()
InitializeComponent()
End Sub
Private Sub MainWindow_Loaded(ByVal sender As Object, ByVal e As EventArgs)
' Check for safe mode
If CBool(Application.Current.Properties("SafeMode")) = True Then
Me.Title &= " [SafeMode]"
End If
End Sub
End Class
End Namespace
Comentários
Application expõe um dicionário por meio Properties do qual você pode usar para armazenar propriedades de escopo do aplicativo. Isso permite que você compartilhe o estado entre todos os códigos de forma AppDomain thread-safe, sem a necessidade de escrever seu próprio código de estado.
As propriedades armazenadas em Properties devem ser convertidas no tipo apropriado retornado.
A Properties propriedade é thread-safe e está disponível em qualquer thread.