Application.Properties Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar en samling egenskaper för programomfattning.
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
Egenskapsvärde
En IDictionary som innehåller egenskaperna för programomfattning.
Exempel
I följande exempel visas hur du skapar och använder en application-scope-egenskap med hjälp av 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
Kommentarer
Application exponerar en ordlista via Properties som du kan använda för att lagra egenskaper för programomfattning. På så sätt kan du dela tillstånd mellan all kod på ett AppDomain trådsäkert sätt, utan att behöva skriva din egen tillståndskod.
Egenskaper som lagras i Properties måste konverteras till lämplig typ som returneras.
Egenskapen Properties är trådsäker och är tillgänglig från alla trådar.