我想将System.Windows.Media.Color值转换为System.Windows.Media.Brush.颜色值被数据绑定到Rectangle对象的Fill属性.Fill属性采用Brush对象,因此我需要一个IValueConverter对象来执行转换.
WPF中是否有内置转换器,还是需要创建自己的转换器?如果有必要,我该如何创建自己的?
什么是LocalDate
从Java 8和XMLGregorianCalendar
?之间进行转换的最佳方法?
我有一个我想显示/隐藏的控件,具体取决于布尔值.
我有一个NegatedBooleanConverter(切换为true,反之亦然),我需要先运行此转换器.我有一个BooleanToVisibilityConverter,我需要在NegatedBoolConverter之后运行这个转换器.
我该如何解决这个问题?我想在XAML中这样做.
编辑:这是一个可能的解决方案.
这似乎不起作用.它首先使用单独的转换器转换值,然后使用转换后的值执行某些操作.
我需要的是:
是否可以绑定到Silverlight 4.0中的ConverterParameter?
例如,我想做类似的事情,并将ConverterParameter绑定到ViewModel中的对象.
如果不可能,还有其他选择吗?
<RadioButton
Content="{Binding Path=Mode}"
IsChecked="{Binding
Converter={StaticResource ParameterModeToBoolConverter},
ConverterParameter={Binding Path=DataContext.SelectedMode,ElementName=root}}"
/>
Run Code Online (Sandbox Code Playgroud) 在搜索interweb以寻找我的VB.net问题的解决方案时,我经常会找到有关特定主题的有用文章,但代码是C#.这不是什么大问题,但是手动将它转换为VB需要一些时间.有些网站提供从C#到VB的代码转换器,反之亦然,但是在代码转换之后修复所有缺陷几乎和我自己做的一样耗费时间.
直到现在我正在使用http://labs.developerfusion.co.uk/convert/csharp-to-vb.aspx
你知道更好的事吗?
例如,我想检查一个字符串,如果它不能转换为整数(with int()
),我该如何检测?
我需要准确地将HSB转换为RGB,但我不知道如何解决将小数转换为整数而不进行舍入的问题.这是我在colorpicker库中使用的当前函数:
HSBToRGB = function (hsb) {
var rgb = { };
var h = Math.round(hsb.h);
var s = Math.round(hsb.s * 255 / 100);
var v = Math.round(hsb.b * 255 / 100);
if (s == 0) {
rgb.r = rgb.g = rgb.b = v;
} else {
var t1 = v;
var t2 = (255 - s) * v / 255;
var t3 = (t1 - t2) * (h % 60) / 60;
if (h == 360) h = 0;
if …
Run Code Online (Sandbox Code Playgroud) 我有理解如何有效地使用JSF 2中的选择和POJO /实体.例如,我试图Warehouse
通过下面的下拉列表选择一个实体:
<h:selectOneMenu value="#{bean.selectedWarehouse}">
<f:selectItem itemLabel="Choose one .." itemValue="#{null}" />
<f:selectItems value="#{bean.availableWarehouses}" />
</h:selectOneMenu>
Run Code Online (Sandbox Code Playgroud)
以下托管bean:
@Named
@ViewScoped
public class Bean {
private Warehouse selectedWarehouse;
private List<SelectItem> availableWarehouses;
// ...
@PostConstruct
public void init() {
// ...
availableWarehouses = new ArrayList<>();
for (Warehouse warehouse : warehouseService.listAll()) {
availableWarehouses.add(new SelectItem(warehouse, warehouse.getName()));
}
}
// ...
}
Run Code Online (Sandbox Code Playgroud)
请注意,我使用整个Warehouse
实体作为值SelectItem
.
当我提交表单时,会失败并显示以下消息:
'null Converter'的转换错误设置值'com.example.Warehouse@cafebabe'.
我希望Warehouse
当我将它包装在一个中时,JSF可以将正确的对象设置为我的托管bean SelectItem
.将我的实体包装在里面SelectItem
意味着跳过Converter
为我的实体创建一个.
Converter
每当我想在我的实体中使用实体时,我真的必须使用<h:selectOneMenu>
吗?JSF应该可以从可用项列表中提取所选项.如果我真的必须使用转换器,那么实际的方法是什么?到目前为止,我想到了这个:
Converter
为实体创建实现. …我正在构建一个可供许多用户使用的应用程序.每个用户都被分类为下一个身份验证级别之一:
public enum AuthenticationEnum
{
User,
Technitian,
Administrator,
Developer
}
Run Code Online (Sandbox Code Playgroud)
某些控件(如按钮)仅向某些级别的用户公开.我有一个属性,其中包含当前用户的身份验证级别:
public AuthenticationEnum CurrentAuthenticationLevel { get; set; }
Run Code Online (Sandbox Code Playgroud)
我想将此属性绑定到某些控件的"Visibilty"属性,并将参数传递给Converter方法,告诉它什么是能够查看控件的最低身份验证级别.例如:
<Button Visibility="{Binding Path=CurrentAuthenticationLevel, Converter={StaticResource AuthenticationToVisibility}, ConverterParameter="Administrator"}"/>
Run Code Online (Sandbox Code Playgroud)
意味着只有"管理员"和"开发人员"才能看到该按钮.不幸的是,上面的代码将"Administrator"作为字符串传递.当然,我可以在转换器方法中使用Switch-Case并将字符串转换为AuthenticationEnum.但这很难看并且容易出现维护错误(每次枚举更改时 - 转换器方法都应该更改).
有没有更好的方法来传递非平凡的对象作为参数?
我已经开始使用nodejs和jade编写应用程序,但过了一段时间我的团队决定切换到Django.我仍然想使用使用jade编写的网页,而不必手动重写它们.
有谁知道一个工具将玉代码转换为HTML?据我所见,大多数涉及玉的工具都集中在相反的转变上.