Este mini apunte muestra como se puede acceder al modelo vista (MVVM) desde el código de la aplicación.
Para acceder al Modelo Vista declarado en el apartado [Resources] de la ventana o de la aplicación desde código hay que dar los siguientes pasos:
La llamare [ColegaModeloVista] y solo tendrá una propiedad, el nombre del colega
Public Class ColegaModeloVista Public Property Nombre As String End Class
Incluirla en [Resources]m de la ventana
Establecer el enlace de datos, porque es un modelo vista. Aunque en realidad para esta ejemplo no hace falta.
<Window x:Class="WindowPruebaColega" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:WpfApplicationPruebasComboBoxPersonalizado" mc:Ignorable="d" Title="WindowPruebaColega" Height="100" Width="200"> <Window.Resources> <local:ColegaModeloVista x:Key="ColegaModeloVistaDatos" /> </Window.Resources> <Grid> <TextBox x:Name="textBoxNombreColega" HorizontalAlignment="Left" VerticalAlignment="Top" Height="23" Width="120" Margin="5" TextWrapping="NoWrap" Text="{Binding Nombre, Source={StaticResource ColegaModeloVistaDatos}}" /> </Grid> </Window>
En el código [behind] de la ventana usaremos [FindResource] para acceder al objeto Vista. Fíjate en las dos formas que he usado para hacerlo, aunque en realidad es la misma.
Public Class WindowPruebaColega Private _accesoALaVista As ColegaModeloVista Public Sub New() ' Esta llamada es exigida por el diseñador. InitializeComponent() ' Agregue cualquier inicialización después de la llamada a InitializeComponent(). _accesoALaVista = CType(Me.FindResource("ColegaModeloVistaDatos"), ColegaModeloVista) End Sub Public ReadOnly Property NombreColegaEjemploUno As String Get Return _accesoALaVista.Nombre End Get End Property Public ReadOnly Property NombreColegaEjemploDos As String Get Dim _accesoALaVistaEjemploDos As ColegaModeloVista _accesoALaVistaEjemploDos = CType(Me.FindResource("ColegaModeloVistaDatos"), ColegaModeloVista) Return _accesoALaVistaEjemploDos.Nombre End Get End Property End Class
La pantalla muestra únicamente un cuadro de texto vacio porque no tiene funcionalidad. En este artículo lo que interesa es ver cómo se accede al modelo vista desde el código.
© 1997 - - La Güeb de Joaquín | |||||
Joaquín Medina Serrano
|
|||||
|
Codificación | |
Fecha de creación | |
Última actualización | |
![]() |