标签: valueconverter

如何将ValueConverter应用于基于约定的Caliburn.Micro绑定?

如何将ValueConverter应用于基于约定的Caliburn.Micro绑定?或者你需要使用{Binding}语法吗?

我知道我能做到这一点

<TextBlock
    Text="{Binding Foo, Converter=fooToBarConverter}" />
Run Code Online (Sandbox Code Playgroud)

但如果我使用Caliburn.Micro的约定优于配置,如何应用该自定义转换器

<TextBlock
    x:Name="Foo" />
Run Code Online (Sandbox Code Playgroud)

谢谢,

silverlight xaml binding valueconverter caliburn.micro

8
推荐指数
1
解决办法
1292
查看次数

在delphi中将hex str转换为十进制值

我有一个问题,用Delphi转换整数值的十六进制值的字符串表示.

例如:

当我使用该功能时,$ FC75B6A9D025CB16给我802829546:

Abs(StrToInt64('$FC75B6A9D025CB16'))
Run Code Online (Sandbox Code Playgroud)

但如果我使用Windows的calc程序,结果是:18191647110290852630

所以我的问题是:谁是对的?我,还是钙?

有人有这种问题吗?

delphi hex decimal valueconverter delphi-6

8
推荐指数
3
解决办法
2万
查看次数

带有必填小数点的双精度数字串

这可能是愚蠢的,但它让我很难过.我需要/格式转换一个doublestring具有强制性小数点.

1         => 1.0
0.2423423 => 0.2423423
0.1       => 0.1
1234      => 1234.0
Run Code Online (Sandbox Code Playgroud)

基本上,我想输出所有小数,但也要确保舍入值也有冗余.0.我相信有一种简单的方法可以实现这一目标.

c# string double valueconverter

7
推荐指数
2
解决办法
3461
查看次数

C#如何将Environment.TickCount转换为HH:mm:ss:ms

我正在尝试将int值Environment.TickCount转换为格式dd:HH:mm:ss:ms(天:小时:分钟:秒:毫秒)

有没有一种简单的方法可以做到这一点,还是应该将Environment.TickCount除以60然后除以3600然后除以216000等?

c# int valueconverter

7
推荐指数
1
解决办法
5108
查看次数

将毫秒转换为天,小时,分钟和秒

我在Microsoft SQL Server 2008R2中有一个bigint字段填充了刻度线(单个刻度表示一百纳秒或一千万分之一秒.在一毫秒内有10,000个刻度.)

http://msdn.microsoft.com/en-us/library/system.datetime.ticks.aspx

我需要将所有记录的总和转换为Days:Hours:Minutes:Seconds:Milliseconds.

它适用于单个记录:

SELECT CONVERT(TIME, DATEADD(ms, duration/10000, 0)) FROM tblMediaFileProperties WHERE FileId = '6C0A849D-95B4-4755-A923-B9DD8F1AF23E'
Run Code Online (Sandbox Code Playgroud)

但如果使用以下内容对所有记录求和:

SELECT CONVERT(TIME, DATEADD(ms, SUM(duration/10000), 0)) FROM tblMediaFileProperties 
Run Code Online (Sandbox Code Playgroud)

我得到一个:

将表达式转换为数据类型int的算术溢出错误.

我知道溢出来自CONVERT到数据类型TIME函数...

帮助表示感谢,谢谢!

sql sql-server valueconverter

6
推荐指数
1
解决办法
3万
查看次数

KnockoutJS中价值转换的最佳方法?

我一直试图找出在Knockout-JS中显示/编辑百分比值的正确方法(更一般地说,我应该如何创建像这样的可重用组件).

我的ViewModel有一个可观察的值,它是一个存储为小数的百分比,例如0.5代表50%.我想以百分比格式显示编辑值(例如'50'),这样用户就不会感到困惑(他们很容易混淆).

可写的计算机

通过设置可写的计算函数,我能够得到一个简单的版本:参见http://jsfiddle.net/Quango/fvpjN/

但是,这不是非常可重用,因为需要为每个值重新实现它.我尝试使用扩展器,但这有效地掩盖了潜在的价值,因此使其无法使用.

BindingHandlers

认为我需要的是一个绑定处理程序,所以不要写

<input data-bind="value: commission" /> 
Run Code Online (Sandbox Code Playgroud)

我会写的

<input data-bind="percentage: commission" />
Run Code Online (Sandbox Code Playgroud)

我查看了knockout.js中"value"bindingHandler中的代码,但是有很多代码用于绑定,我不想复制它.

所以我的问题是:

  1. 是否有良好的/标准/模板方式来进行这种价值转换?

  2. 如果没有,有没有办法重新使用"值"绑定而无需复制和粘贴现有代码?

valueconverter knockout.js

6
推荐指数
1
解决办法
4448
查看次数

Aurelia - 使用承诺的价值转换器

我需要使用promise返回的格式来格式化Date.我尝试从toView(value)返回promise.但这不起作用.

@autoinject
export class DateTimeValueConverter {

    constructor(private formatService:FormatService) {
    }

    toView(value) {
        return this.formatService.getFormat().then(format=>
            moment(value).format(format)
        );
    }

}
Run Code Online (Sandbox Code Playgroud)

这是FormatService的代码,它可以正常工作

export class FormatService {

    private format;

    constructor(private http:AppHttp) {
        this.format= null;
    }

    public getFormat() : Promise<string>{

        if (this.format){
            var promise = new Promise<string>((resolve, reject)=>{
                resolve(this.format);
            });
            return promise;
        }

        return this.http.get('format')
            .then((format) => {
                if (format){
                    this.format= format;
                }
                return format;
            });
        }
}
Run Code Online (Sandbox Code Playgroud)

valueconverter promise typescript aurelia

6
推荐指数
1
解决办法
798
查看次数

如何将 string("1.0000") 转换为 int

多为4位小数的字符串格式数据需要转成int。我试过这个但不起作用,甚至直接使用这个 Convert.ToInt16() 但仍然没有工作:

Int32 result;
bool status = Int32.TryParse(v, out result);
Run Code Online (Sandbox Code Playgroud)

还有其他方法可以转换吗?

谢谢。

c# string int valueconverter

6
推荐指数
1
解决办法
6965
查看次数

在使用带ValueConverter的自定义类型时,实体框架Linq查询是客户端评估的

我正在使用Microsoft的Entity Framework Core并尝试使用ValueConverters来允许我的数据库模型实体中的自定义类型.关键是要拥有自己的类型,我可以自定义,并将其余代码与数据库中实际使用的类型屏蔽开来.

(遗憾的是,遗留代码直接访问模型实体而没有接口,所以除非我进行重大改造,否则这就是我剩下的.)

它主要工作,但我的问题是,实体框架不能我喜欢的类型转换为数据库类型的where子句 (可能还有其他,但这是我所遇到的),而是做一个客户端的评价,这显然是一个性能问题,因为所有候选人都被查询.

所以,我想知道是否有人遇到过此问题以及是否有解决方案,或者我是否必须尝试不同的方法.


如果你想要一些代码,那就是.我试图削减它,所以实现有点奇怪,但它仍然以同样的方式失败.

让我们调用我的自定义结构类型ItemId,让它保存一个字符串,并允许从long或string创建它:

public struct ItemId
{
    public string Data;

    public ItemId(long data)
    {
        Data = data.ToString();
    }

    public ItemId(string data)
    {
        Data = data;
    }

    public override bool Equals(object obj)
    {
        return obj is ItemId itemId && Data == itemId.Data;
    }

    public override int GetHashCode()
    {
        return HashCode.Combine(Data);
    }

    public static bool operator ==(ItemId id1, ItemId id2)
    {
        return id1.Data == …
Run Code Online (Sandbox Code Playgroud)

c# valueconverter linq-to-sql entity-framework-core

6
推荐指数
0
解决办法
500
查看次数

是否在WPF中实现了每个绑定的值转换器?

是否为使用特定值转换器类的每个绑定实例化了单独的WPF值转换器对象?


我正在尝试创建一个双向位到布尔值转换器.我希望能够将bool属性(例如IsChecked)绑定到值类型(如a ushort)中的某个位.我正在使用转换器的parameter参数来指定该位.实现ConvertBack()方法很简单,但转换()有点棘手.

在Convert()中,我需要知道整个的值是什么,ushort所以我可以只切换我感兴趣的单个位.我想在我的值转换器类中使用成员变量来临时存储它每当ConvertBack()被调用,从而导致上述问题:每个绑定是否都有自己的值转换器实例?

wpf binding valueconverter

5
推荐指数
1
解决办法
1249
查看次数