如何将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)
谢谢,
我有一个问题,用Delphi转换整数值的十六进制值的字符串表示.
例如:
当我使用该功能时,$ FC75B6A9D025CB16给我802829546:
Abs(StrToInt64('$FC75B6A9D025CB16'))
Run Code Online (Sandbox Code Playgroud)
但如果我使用Windows的calc程序,结果是:18191647110290852630
所以我的问题是:谁是对的?我,还是钙?
有人有这种问题吗?
这可能是愚蠢的,但它让我很难过.我需要/格式转换一个double
以string
具有强制性小数点.
1 => 1.0
0.2423423 => 0.2423423
0.1 => 0.1
1234 => 1234.0
Run Code Online (Sandbox Code Playgroud)
基本上,我想输出所有小数,但也要确保舍入值也有冗余.0
.我相信有一种简单的方法可以实现这一目标.
我正在尝试将int值Environment.TickCount转换为格式dd:HH:mm:ss:ms(天:小时:分钟:秒:毫秒)
有没有一种简单的方法可以做到这一点,还是应该将Environment.TickCount除以60然后除以3600然后除以216000等?
我在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函数...
帮助表示感谢,谢谢!
我一直试图找出在Knockout-JS中显示/编辑百分比值的正确方法(更一般地说,我应该如何创建像这样的可重用组件).
我的ViewModel有一个可观察的值,它是一个存储为小数的百分比,例如0.5代表50%.我想以百分比格式显示和编辑值(例如'50'),这样用户就不会感到困惑(他们很容易混淆).
通过设置可写的计算函数,我能够得到一个简单的版本:参见http://jsfiddle.net/Quango/fvpjN/
但是,这不是非常可重用,因为需要为每个值重新实现它.我尝试使用扩展器,但这有效地掩盖了潜在的价值,因此使其无法使用.
我认为我需要的是一个绑定处理程序,所以不要写
<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中的代码,但是有很多代码用于绑定,我不想复制它.
所以我的问题是:
是否有良好的/标准/模板方式来进行这种价值转换?
如果没有,有没有办法重新使用"值"绑定而无需复制和粘贴现有代码?
我需要使用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) 多为4位小数的字符串格式数据需要转成int。我试过这个但不起作用,甚至直接使用这个 Convert.ToInt16() 但仍然没有工作:
Int32 result;
bool status = Int32.TryParse(v, out result);
Run Code Online (Sandbox Code Playgroud)
还有其他方法可以转换吗?
谢谢。
我正在使用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) 是否为使用特定值转换器类的每个绑定实例化了单独的WPF值转换器对象?
我正在尝试创建一个双向位到布尔值转换器.我希望能够将bool
属性(例如IsChecked
)绑定到值类型(如a ushort
)中的某个位.我正在使用转换器的parameter
参数来指定该位.实现ConvertBack()方法很简单,但转换()有点棘手.
在Convert()中,我需要知道整个的值是什么,ushort
所以我可以只切换我感兴趣的单个位.我想在我的值转换器类中使用成员变量来临时存储它每当ConvertBack()被调用,从而导致上述问题:每个绑定是否都有自己的值转换器实例?
valueconverter ×10
c# ×4
binding ×2
int ×2
string ×2
aurelia ×1
decimal ×1
delphi ×1
delphi-6 ×1
double ×1
hex ×1
knockout.js ×1
linq-to-sql ×1
promise ×1
silverlight ×1
sql ×1
sql-server ×1
typescript ×1
wpf ×1
xaml ×1