Application.Properties Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene un insieme di proprietà dell'ambito dell'applicazione.
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
Valore della proprietà
Oggetto IDictionary contenente le proprietà dell'ambito dell'applicazione.
Esempio
Nell'esempio seguente viene illustrato come creare e usare una proprietà di ambito applicazione 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"] == true)
{
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
Commenti
Application espone un dizionario tramite Properties il quale è possibile usare per archiviare le proprietà dell'ambito dell'applicazione. In questo modo è possibile condividere lo stato tra tutto il codice in modo AppDomain thread-safe, senza dover scrivere codice di stato personalizzato.
Le proprietà archiviate in Properties devono essere convertite nel tipo appropriato restituito.
La Properties proprietà è thread-safe ed è disponibile da qualsiasi thread.