XamlHelper
Métodos diversos de ajuda e extensão WPF para threading de UI, vinculações, imagens, diálogos e conversões de tipo.
Propriedades
public static Dispatcher CurrentThreadDispatcher { get; }
value = XamlHelper.CurrentThreadDispatcher
Obtém o Dispatcher associado ao tópico atual.
Métodos
public static void CopyToClipboard<T>(T value)
XamlHelper.CopyToClipboard(value)
Copia o valor fornecido para a área de transferência do sistema no tópico UI.
public static void DeleteHideable(Window window)
XamlHelper.DeleteHideable(window)
Remove o comportamento de ocultar- sobre- fechar previamente adicionado.
public static void EnsureUIThread(object obj)
XamlHelper.EnsureUIThread(obj)
Garante que o fio atual é o fio UI e lança de outra forma.
- obj
- Qualquer DispatcherObject ou Dispatcher ou outro objeto para inferir o expedidor de.
public static void EnsureUIThread()
XamlHelper.EnsureUIThread()
Lança se o thread atual não for o thread UI.
public static T FindLogicalChild<T>(DependencyObject obj)
result = XamlHelper.FindLogicalChild(obj)
Procura a árvore lógica primeiro e devolve o primeiro filho do tipo especificado, ou nulo se nenhum foi encontrado.
public static T FindLogicalParentOfType<T>(DependencyObject child)
result = XamlHelper.FindLogicalParentOfType(child)
Sobe a árvore lógica e retorna o primeiro pai do tipo especificado, ou nulo, se nenhum foi encontrado.
public static IEnumerable<T> FindVisualChilds<T>(DependencyObject obj)
result = XamlHelper.FindVisualChilds(obj)
Elenca todas as crianças visuais do tipo especificado.
public static T FindVisualChild<T>(DependencyObject obj)
result = XamlHelper.FindVisualChild(obj)
Devolve o primeiro filho visual do tipo especificado, ou nulo, se nenhum foi encontrado.
public static VerticalAlignment FromWpf(VerticalAlignment value)
result = XamlHelper.FromWpf(value)
Converter VerticalAlignment valor para VerticalAlignment.
- value
- VerticalAlignment value.
Retorna: VerticalAlignment value.
public static PointF FromWpf(Point value)
result = XamlHelper.FromWpf(value)
Converter valor do ponto para PointF.
- value
- Valor do ponto.
Retorna: PointF value.
public static Brush FromWpf(Brush value)
result = XamlHelper.FromWpf(value)
Converter valor do pincel para DrawingBrush.
- value
- Valor de escova.
Retorna: DrawingBrush value.
public static Color FromWpf(Color value)
result = XamlHelper.FromWpf(value)
Converter valor de cor para cor.
- value
- Valor de cor.
Retorna: Valor de cor.
public static HorizontalAlignment FromWpf(HorizontalAlignment value)
result = XamlHelper.FromWpf(value)
Converter HorizontalAlignment valor para HorizontalAlignment.
- value
- HorizontalAlignment value.
Retorna: HorizontalAlignment value.
public static Thickness FromWpf(Thickness value)
result = XamlHelper.FromWpf(value)
Converter valor de espessura em espessura.
- value
- Valor de espessura.
Retorna: Valor de espessura.
public static Window GetActiveOrMainWindow(Application app)
result = XamlHelper.GetActiveOrMainWindow(app)
Devolve a janela activa ou a janela principal se nenhuma estiver activa.
public static Window GetActiveWindow(Application app)
result = XamlHelper.GetActiveWindow(app)
Devolve a primeira janela activa, ou nula, se nenhuma foi encontrada.
public static IEnumerable<Window> GetActiveWindows(Application app)
result = XamlHelper.GetActiveWindows(app)
Devolve todas as janelas activas no momento na aplicação.
public static ValueTuple<int, int> GetActualSize(FrameworkElement elem)
result = XamlHelper.GetActualSize(elem)
Retorna o elemento ActualWidth/ActualHeight como tuple inteiros.
public static Brush GetBrush(DrawingImage source)
result = XamlHelper.GetBrush(source)
Obtém o primeiro pincel encontrado no desenho DrawingImage.
public static bool? GetDialogResult(DependencyObject obj)
result = XamlHelper.GetDialogResult(obj)
Caldeira anexada propriedade "bool? DialogResult" usado para definir Window.DialogResult de um botão.
public static BitmapSource GetImage(FrameworkElement elem)
result = XamlHelper.GetImage(elem)
Muda para FrameworkElement em um bitmap usando seu tamanho atual.
public static BitmapSource GetImage(Visual visual, ValueTuple<int, int> size)
result = XamlHelper.GetImage(visual, size)
Muda um Visual para um bitmap usando a largura e altura especificadas.
public static BitmapSource GetImage(Visual visual, int width, int height)
result = XamlHelper.GetImage(visual, width, height)
Muda um Visual para um bitmap com a largura e altura dadas.
public static ImageSource GetImage(string iconKey, SolidColorBrush fill, SolidColorBrush stroke)
result = XamlHelper.GetImage(iconKey, fill, stroke)
Obtém um ícone temático SVG/Vector recolorido com as escovas de preenchimento e traço especificadas.
public static IEnumerable<string> GetSystemFontFamilies()
result = XamlHelper.GetSystemFontFamilies()
Obter famílias de fontes do sistema.
Retorna: Famílias de fontes do sistema.
public static Window GetWindow(DependencyObject obj)
result = XamlHelper.GetWindow(obj)
Obtém a janela de posse do objeto especificado.
public static void GuiAsync(Dispatcher dispatcher, Action action, DispatcherPriority priority)
XamlHelper.GuiAsync(dispatcher, action, priority)
Executa a ação no thread UI assincronicamente com a prioridade especificada.
public static void GuiAsync(Dispatcher dispatcher, Action action)
XamlHelper.GuiAsync(dispatcher, action)
Executa a ação no thread UI assincronicamente com prioridade normal.
public static void GuiAsync(DispatcherObject obj, Action action)
XamlHelper.GuiAsync(obj, action)
Executa a ação no thread de UI assincronicamente usando o Dispatcher do objeto.
public static void GuiSync(Dispatcher dispatcher, Action action, DispatcherPriority priority)
XamlHelper.GuiSync(dispatcher, action, priority)
Executa a ação síncrona no Expedidor com a prioridade especificada.
public static void GuiSync(DispatcherObject obj, Action action)
XamlHelper.GuiSync(obj, action)
Executa a ação sincronicamente no Dispatcher do objeto.
public static void GuiSync(Dispatcher dispatcher, Action action)
XamlHelper.GuiSync(dispatcher, action)
Executa a ação síncrona no Dispatcher com prioridade normal.
public static T GuiSync<T>(Dispatcher dispatcher, Func<T> func)
result = XamlHelper.GuiSync(dispatcher, func)
Executa a função sincronicamente no Dispatcher com prioridade normal e retorna o resultado.
public static T GuiSync<T>(DispatcherObject obj, Func<T> func)
result = XamlHelper.GuiSync(obj, func)
Executa a função sincronicamente no Dispatcher do objeto e retorna seu resultado.
public static T GuiSync<T>(Dispatcher dispatcher, Func<T> func, DispatcherPriority priority)
result = XamlHelper.GuiSync(dispatcher, func, priority)
Executa a função sincronicamente no Dispatcher com a prioridade especificada e retorna o resultado.
public static Task GuiThreadGetAsync(Action<CancellationToken> action, CancellationToken token)
result = XamlHelper.GuiThreadGetAsync(action, token)
Invoca a ação fornecida no tópico UI, se necessário.
public static Task GuiThreadGetAsync(Func<CancellationToken, Task> func, CancellationToken token)
result = XamlHelper.GuiThreadGetAsync(func, token)
Invoca a ação assync fornecida no tópico UI, se necessário.
public static Task<TResult> GuiThreadGetAsync<TResult>(Func<CancellationToken, TResult> func, CancellationToken token)
result = XamlHelper.GuiThreadGetAsync(func, token)
Invoca a função fornecida no thread UI se necessário e retorna seu resultado.
public static Task<TResult> GuiThreadGetAsync<TResult>(Func<CancellationToken, Task<TResult>> func, CancellationToken token)
result = XamlHelper.GuiThreadGetAsync(func, token)
Invoca a função assync fornecida no thread UI se necessário e retorna o seu resultado.
public static DispatcherOperation InvokeAsync(DependencyObject obj, Action action, DispatcherPriority priority, CancellationToken cancellationToken)
result = XamlHelper.InvokeAsync(obj, action, priority, cancellationToken)
Invoca a função fornecida no thread UI, se necessário.
- obj
- O objeto de dependência para obter o Dispatcher.
- action
- A função a invocar.
- priority
- DispatcherPriority
- cancellationToken
- CancellationToken
Retorna: DispatcherOperation
public static DispatcherOperation<T> InvokeAsync<T>(DependencyObject obj, Func<T> action, DispatcherPriority priority, CancellationToken cancellationToken)
result = XamlHelper.InvokeAsync(obj, action, priority, cancellationToken)
Invoca a função fornecida no thread UI se necessário e retorna seu resultado.
- obj
- O objeto de dependência para obter o Dispatcher.
- action
- A função a invocar.
- priority
- DispatcherPriority
- cancellationToken
- CancellationToken
Retorna: DispatcherOperation
public static bool IsDesignMode(DependencyObject obj)
result = XamlHelper.IsDesignMode(obj)
Retorna true se estiver rodando no modo de projeto.
public static bool IsFontSupported(string familyName)
result = XamlHelper.IsFontSupported(familyName)
Determina se o tipo de letra é suportado.
- familyName
- Nome da família Font.
Retorna: Verdadeiro se suportado; caso contrário falso.
public static bool IsUI()
result = XamlHelper.IsUI()
Determina que o thread atual está associado com o Dispatcher.
Retorna: Verificar o resultado.
public static void LoadViewFromUri(Control control, string baseUri)
XamlHelper.LoadViewFromUri(control, baseUri)
Carrega uma visão XAML da embalagem relativa especificada URI para o controle.
public static void MakeHideable(Window window)
XamlHelper.MakeHideable(window)
Ganchos Encerrando evento para esconder a janela em vez de fechá-lo.
public static SvgImage ReColor(SvgImage orig, Color? stroke, Color? fill)
result = XamlHelper.ReColor(orig, stroke, fill)
Mudar as cores de curso/enchemento da imagem SVG. O original não é alterado.
public static void SaveImage(BitmapSource image, Stream file)
XamlHelper.SaveImage(image, file)
Salva o bitmap no fluxo fornecido no formato PNG.
public static void SetBindings(DependencyObject obj, DependencyProperty property, object dataObject, string path, BindingMode mode, IValueConverter converter, object parameter)
XamlHelper.SetBindings(obj, property, dataObject, path, mode, converter, parameter)
Aplica uma simples ligação à propriedade de dependência especificada.
public static void SetBindings(DependencyObject obj, DependencyProperty property, object dataObject, PropertyPath path, BindingMode mode, IValueConverter converter, object parameter)
XamlHelper.SetBindings(obj, property, dataObject, path, mode, converter, parameter)
Aplica uma simples ligação à propriedade de dependência especificada com PropertyPath.
public static void SetDialogResult(DependencyObject obj, bool? value)
XamlHelper.SetDialogResult(obj, value)
Define o valor DialogResult para um botão.
public static void SetMultiBinding(DependencyObject obj, DependencyProperty prop, IMultiValueConverter conv, Binding[] bindings)
XamlHelper.SetMultiBinding(obj, prop, conv, bindings)
Cria um MultiBinding com ligações e conversores fornecidos e aplica-o à propriedade especificada.
public static bool ShowModal(CommonDialog dlg, Window owner)
result = XamlHelper.ShowModal(dlg, owner)
Mostra o CommonDialog como modal com a janela do proprietário especificada.
public static bool ShowModal(CommonDialog dlg, DependencyObject obj)
result = XamlHelper.ShowModal(dlg, obj)
Mostra o CommonDialog como modal usando o objeto proprietário para resolver a janela do proprietário.
public static bool ShowModal(Window wnd, Window owner)
result = XamlHelper.ShowModal(wnd, owner)
Mostra a janela como modal com o proprietário indicado.
public static bool ShowModal(Window wnd, DependencyObject obj)
result = XamlHelper.ShowModal(wnd, obj)
Mostra a janela como modal usando o objeto proprietário para resolver a janela do proprietário.
public static bool ShowModal(Window wnd)
result = XamlHelper.ShowModal(wnd)
Mostra a janela como modal usando Application.Current.MainWindow como proprietário, se disponível.
public static bool ShowModel<TWindow>(object model, DependencyObject owner)
result = XamlHelper.ShowModel(model, owner)
Cria e mostra uma janela modal do tipo TWindow com DataContextdefinido para o modelo fornecido.
public static BitmapImage ToBitmapImage(Stream streamSource, BitmapCreateOptions options, BitmapCacheOption cache, bool freeze)
result = XamlHelper.ToBitmapImage(streamSource, options, cache, freeze)
Cria um BitmapImage a partir de um fluxo com parâmetros de init opcionais.
public static Color ToColor(int color)
result = XamlHelper.ToColor(color)
Converte o ARGB int para Color.
public static int ToInt(Color color)
result = XamlHelper.ToInt(color)
Converte uma Cor para o int ARGB.
public static ImageSource ToSvg(Stream stream)
result = XamlHelper.ToSvg(stream)
Converter fluxo para imagem SVG.
- stream
- Fluxo
Retorna: Imagem SVG.
public static Color ToTransparent(Color color, byte alpha)
result = XamlHelper.ToTransparent(color, alpha)
Devolve uma cópia da cor com o canal alfa indicado.
public static VerticalAlignment ToWpf(VerticalAlignment value)
result = XamlHelper.ToWpf(value)
Converter VerticalAlignment valor para VerticalAlignment.
- value
- VerticalAlignment value.
Retorna: VerticalAlignment value.
public static HorizontalAlignment ToWpf(HorizontalAlignment value)
result = XamlHelper.ToWpf(value)
Converter HorizontalAlignment valor para HorizontalAlignment.
- value
- HorizontalAlignment value.
Retorna: HorizontalAlignment value.
public static Thickness ToWpf(Thickness value)
result = XamlHelper.ToWpf(value)
Converter valor de espessura em espessura.
- value
- Valor de espessura.
Retorna: Valor de espessura.
public static Point ToWpf(PointF value)
result = XamlHelper.ToWpf(value)
Converter PointF valor para Ponto.
- value
- PointF value.
Retorna: Valor do ponto.
public static Brush ToWpf(Brush value)
result = XamlHelper.ToWpf(value)
Converter DrawingBrush valor para Pincel.
- value
- DrawingBrush value.
Retorna: Valor de escova.
public static Color ToWpf(Color value)
result = XamlHelper.ToWpf(value)
Converter valor de cor para cor.
- value
- Valor de cor.
Retorna: Valor de cor.
public static void TryOpenLink(string url, DependencyObject owner)
XamlHelper.TryOpenLink(url, owner)
Tente abrir o link indicado. Se falhar, copie o URL para a área de transferência e mostre uma mensagem de erro.
- url
- Link.
- owner
- O dono da linha de interface.
public static bool TryOpenWithInitialDir(DXFileDialog dlg, DependencyObject owner, string ctrlName)
result = XamlHelper.TryOpenWithInitialDir(dlg, owner, ctrlName)
Abre uma janela de ficheiros com a última pasta usada (se disponível) e guarda a pasta seleccionada ao fechar.
public static bool TryOpenWithInitialDir(DXFolderBrowserDialog dlg, DependencyObject owner, string ctrlName)
result = XamlHelper.TryOpenWithInitialDir(dlg, owner, ctrlName)
Abre uma janela de navegador de pastas usando a última pasta usada (se disponível) e guarda a pasta seleccionada ao fechar.
public static void UpdateBrush(DrawingImage source, Brush brush)
XamlHelper.UpdateBrush(source, brush)
Atualiza todas as escovas dentro da imagem de desenho para o pincel especificado.
public static void UpdatePen(DrawingImage source, Pen pen)
XamlHelper.UpdatePen(source, pen)
Atualiza todas as canetas dentro da imagem de desenho para a caneta especificada.
public static ImageSource Url2Img(Uri uri)
result = XamlHelper.Url2Img(uri)
Cria um ImageSource de um pacote ou http(s) URI. Suporta SVG via DevExpress.
public static T WpfCast<T>(object value)
result = XamlHelper.WpfCast(value)
Valor de fundição para o tipo especificado.
- value
- Valor de fonte.
Retorna: Valor de fundição.
Campos
public static readonly DependencyProperty DialogResultProperty
value = XamlHelper.DialogResultProperty
Propriedade anexada que liga um Botão para definir sua própria janela DialogResult quando clicado.
public static readonly ICommand DisabledCommand
value = XamlHelper.DisabledCommand
Comando desativado retornando false de CanExecutee jogando quando executado.