Application.Properties Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene una colección de las propiedades del ámbito de la aplicación.
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 de propiedad
IDictionary que contiene las propiedades del ámbito de la aplicación.
Ejemplos
En el ejemplo siguiente se muestra cómo crear y usar una propiedad de ámbito de aplicación mediante 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
Comentarios
Application expone un diccionario a través Properties del cual puede usar para almacenar las propiedades del ámbito de la aplicación. Esto le permite compartir el estado entre todo el código de forma AppDomain segura para subprocesos, sin necesidad de escribir su propio código de estado.
Las propiedades almacenadas en Properties deben convertirse en el tipo adecuado devuelto.
La Properties propiedad es segura para subprocesos y está disponible en cualquier subproceso.