MvvM中转换器IValueConverter的使用

转换器:提供将自定义逻辑应用于绑定的方法 。

     页面显示的值也许不是直观的值,只是如1,2,3...这些数字代码, 转换器可将数据从一种类型更改为另一种类型,例如将数字代码转为具体案例值。

转换器代码:

public class CusTomConvert : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    {
        if (value is int)
            return "这是" + value;

        return null;
    }

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    {
        return null;
    }
}

ViewModel代码:

private int _tName = 1;

public int TName
{
    get { return _tName; }
    set
    {
        _tName = value;
        this.RaisePropertyChanged("TName");
    }
}

xaml文件:转换器写在ViewModel中,所以要引入xmlns:viewModel="clr-namespace:WriteTXT.ViewModels"。

页面显示:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MVVM使用DAO(Data Access Object)的一种常见方式是通过LiveData来与DAO进行交互。LiveData是Jetpack的一个组件,它能够观察数据的变化并在数据发生变化时通知UI层更新。而DAO则是负责与数据源进行交互的接口。 首先,在MVVM架构,你可以创建一个Repository类,该类用于管理数据的访问和操作。在Repository,你可以通过注入DAO来获取对数据源的访问权限。 然后,在ViewModel,你可以通过注入Repository来获取数据。在ViewModel,你可以创建一个LiveData对象,将其从仓库获取的数据存储在该LiveData对象,并在数据发生变化时通知UI层更新。你可以使用观察者模式来观察LiveData对象的变化,并在观察到变化时更新UI。 最后,在UI层(例如Activity或Fragment),你可以观察ViewModel的LiveData对象,并在数据发生变化时更新UI。你可以使用observe()方法来观察LiveData对象的变化,并在回调方法更新UI。 总结起来,在MVVM使用DAO可以通过以下步骤: 1. 创建一个Repository类,用于管理数据的访问和操作,注入DAO来获取对数据源的访问权限。 2. 在ViewModel,注入Repository,创建一个LiveData对象,并将其从仓库获取的数据存储在该LiveData对象。 3. 在UI层,观察ViewModel的LiveData对象,并在数据发生变化时更新UI。 这样,你就可以在MVVM使用DAO来进行数据的读取和操作了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Android MVVM框架使用(十一)(功能开发)记事本](https://blog.csdn.net/qq_38436214/article/details/122685566)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Jetpack MVVM 七宗罪之五: 在 Repository 使用 LiveData](https://blog.csdn.net/vitaviva/article/details/122299916)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值