问题标签 [fallbackvalue]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
7125 浏览

wpf - FallbackValue 如何与 MultiBinding 一起使用?

我问是因为它似乎不起作用。

假设我们绑定到以下对象:

好吧,看起来如果我们对此使用MultiBinding会显示回退值,对吧?

然而结果,其实是“到了”。即使强制绑定返回DependencyProperty.UnsetValue也不起作用:

对TargetNullValue进行了同样的尝试,这也是一个失败的过程。

所以看起来MultiBinding永远不会使用FallbackValue。这是真的,还是我错过了什么?


稍微搞砸了,我发现转换器可以返回我需要的 UnsetValue:

然而,这似乎是一个肮脏肮脏的黑客。我认为这样的场景会在框架中得到考虑。但是,我在 Reflector 中找不到任何东西。

0 投票
5 回答
11049 浏览

c# - AppSettings 后备/默认值?

ASP.NET

对于我使用的每个 appSetting,我想指定一个值,如果在 appSettings 中找不到指定的键,将返回该值。我正要创建一个类来管理它,但我想这个功能可能已经在 .NET Framework 的某个地方了?

.NET 中是否有一个 NameValueCollection/Hash/etc-type 类可以让我指定一个键和一个备用/默认值——并返回键的值或指定的值?

如果有,我可以在调用它之前将 appSettings 放入该类型的对象中(从不同的地方)。

0 投票
1 回答
5186 浏览

wpf - WPF:无法将值从目标保存回源

这就是我得到的完整错误消息:

当我从学生列表数据网格中选择的学生中单击/选择到带有学校课程的列表框时,总是会发生此错误。

当我将存储库加载技术从急切加载更改为延迟加载时,这种情况开始发生。

我的 SelectedSchool 班级发生变化,然后我加载相应的学生 我的 SelectedPupil 发生变化,然后我加载相应的文件

PupilListView.xaml:

这里的 ItemSource 设置为 SELECTED schoolclass 中的所有学生。我不需要 IsSynchronizedItem 的东西,因为我真的没有聚合数据,因为新的延迟加载实体只是通过父实体的 id。

管理员视图模型:

我想问题如下:

当我从选定的 Document 或 Pupil 跳转并选择一个没有任何学生的学校时,它绑定到 NULL,因为我的 ObservableCollection 是延迟创建的,这意味着只有当我从数据库获取数据时,PupilListViewModel_Collection 才为 NULL。

好吧,我想坚持使用延迟加载,并且不需要像我用于急切加载的 DataGrid_ItemsSource=SchoolclassList/PupilList 这样的绑定层次结构。

我怎么能摆脱那个例外?

0 投票
2 回答
1079 浏览

wpf - 我应该总是使用 BindingBase.FallbackValue 吗?

问候,

当我创建 WPF 应用程序时,我显然使用了很多绑定。但是我发现通常我不使用 FallbackValue 属性。

我的问题是:如果应该设置 FallbackValue 事件,我是否应该始终设置: FallbackValue="" ?

使用/不使用 FallbackValue 对内存/性能/其他有什么影响?

0 投票
1 回答
2329 浏览

typo3 - TYPO3 / TypoScript:如何进行后备?

我想通过使用两个后备将字符串输出到呈现的 HTML。

我的打字稿在顶层页面(我网站的根页面)中定义,并传递到较低级别的所有页面。

结构:

  • 主页
    • 第 1 级页面
      • 第 2 级页面

文件的常规输出:

该字符串来自 TemplaVoila 字段(Page / Edit / Extended / MyField):field_copyright_name

要将其输出到 HTML 输出中的所需点,存在一个 templaVoila 映射(类型:Typoscript 对象路径),命名为:lib.copyright_name

以下打字稿完成了这项工作:

这适用于字段(在页面属性中)不为空的所有级别的所有页面。

第一个后备:

如果该字段为空(在该页面的属性中,例如在第 2 级),打字稿应该从上面的页面中获取值(在第 1 级,如果它也是空的,它应该从主页中获取)。不知道该怎么做。你能帮我吗?

第二回退

如果第一个回退仍然返回一个空字符串(因为该字段在所有级别都是空的),它应该回退到默认值“我的版权”。

要在没有“第一次回退”的情况下启用此回退很容易:

但是如何整合“第一后备”呢?

编辑:

我试过:

或者

或者

或者

但没有成功 - 没有输出。

0 投票
2 回答
1727 浏览

wpf - 带有 WPF 应用程序的 Visual Studio 中的许多绑定错误?

当我调试我的应用程序时,Visual Studio 会出现许多绑定错误,例如此处示例中的错误:

有人知道为什么会这样吗?我的同事也没有那些绑定错误,但与我的版本相同。

System.Windows.Data 信息:10:无法使用绑定检索值,并且不存在有效的备用值;改用默认值。BindingExpression:Path=PlanningCd; 数据项=空;目标元素是'TextBlock'(名称='planningSchema');目标属性是“NoTarget”(类型“对象”)

System.Windows.Data 信息:10:无法使用绑定检索值,并且不存在有效的备用值;改用默认值。BindingExpression:Path=PlanningCd; 数据项=空;目标元素是'TextBlock'(名称='planningSchema');目标属性是“文本”(类型“字符串”)

System.Windows.Data 信息:10:无法使用绑定检索值,并且不存在有效的备用值;改用默认值。BindingExpression:路径=测量;数据项=空;目标元素是“ItemsControl”(名称=“MeasurementAndTimeControl”);目标属性是“ItemsSource”(类型“IEnumerable”)

System.Windows.Data 信息:10:无法使用绑定检索值,并且不存在有效的备用值;改用默认值。绑定表达式:路径=前景;数据项=空;目标元素是“ItemsControl”(名称=“MeasurementAndTimeControl”);目标属性是“前景”(类型“画笔”)

System.Windows.Data 信息:10:无法使用绑定检索值,并且不存在有效的备用值;改用默认值。BindingExpression:Path=PlanningCd; 数据项=空;目标元素是'TextBlock'(名称='planningSchema');目标属性是“NoTarget”(类型“对象”)

System.Windows.Data 信息:10:无法使用绑定检索值,并且不存在有效的备用值;改用默认值。BindingExpression:Path=PlanningCd; 数据项=空;目标元素是'TextBlock'(名称='planningSchema');目标属性是“文本”(类型“字符串”)

System.Windows.Data 信息:10:无法使用绑定检索值,并且不存在有效的备用值;改用默认值。绑定表达式:路径=其他参数;数据项=空;目标元素是'ItemsControl'(名称='');目标属性是“ItemsSource”(类型“IEnumerable”)

System.Windows.Data 信息:10:无法使用绑定检索值,并且不存在有效的备用值;改用默认值。绑定表达式:路径=前景;数据项=空;目标元素是'ItemsControl'(名称='');目标属性是“前景”(类型“画笔”)

System.Windows.Data 信息:10:无法使用绑定检索值,并且不存在有效的备用值;改用默认值。绑定表达式:路径=IsSelected;数据项=空;目标元素是'ContentPresenter'(名称='');目标属性是“NoTarget”(类型“对象”)

System.Windows.Data 信息:10:无法使用绑定检索值,并且不存在有效的备用值;改用默认值。绑定表达式:路径=前景;数据项=空;目标元素是'网格'(名称='');目标属性是“前景”(类型“画笔”)

System.Windows.Data 信息:10:无法使用绑定检索值,并且不存在有效的备用值;改用默认值。BindingExpression:路径=测量;数据项=空;目标元素是“ItemsControl”(名称=“MeasurementAndTimeControl”);目标属性是“ItemsSource”(类型“IEnumerable”)

0 投票
3 回答
4797 浏览

c# - 当源对象可能没有给定属性时如何处理绑定?

我有两个具有不同属性的类,但都继承了其他一些基类:

代码隐藏:

我的 XAML 看起来像这样:

在调试模式下运行时,输出窗口显示如下:

System.Windows.Data 警告:40:BindingExpression 路径错误:在“对象”“ClassA”(HashCode=66437409)上找不到“PropertyB”属性。绑定表达式:路径=属性B;DataItem='ClassA' (HashCode=66437409); 目标元素是'TextBlock'(名称='');目标属性是“文本”(类型“字符串”)

System.Windows.Data 警告:40:BindingExpression 路径错误:在“对象”“ClassB”(HashCode=2764078)上找不到“PropertyA”属性。绑定表达式:路径=属性A;DataItem='ClassB' (HashCode=2764078); 目标元素是'TextBlock'(名称='');目标属性是“文本”(类型“字符串”)

有没有更好的方法来处理这样的绑定?是否有任何性能影响,使用 FallbackValue='' 还是 FallbackValue={x:Null} 更好?

0 投票
1 回答
850 浏览

wpf - IEnumerable 异步的虚拟 FallbackValue

我正在尝试调试我的 MVVM 程序(基于 Josh Smith)中的一些数据绑定/性能问题。有很多不同列表和对象的并发加载,所以我一直在使用 isAsync 和一些线程来提高性能和网络瓶颈。

但是,我注意到很多消息是从 ItemsSource 绑定输出的回退值。对于命令,我创建了一个禁用命令的虚拟命令,并且对于大多数事情,我可以绑定到已知的回退原语类型。当我将 ItemsSource 的后备绑定到 {x:Null} 时,问题似乎出现了。

注意:这发生在很多地方,而不仅仅是 chartingToolkit 控件


我的问题:

  1. 这些消息令人担忧吗?我的很多最终用户都有旧机器(并且拒绝升级-.-),所以我一直在努力最大限度地提高性能。
  2. 创建虚拟基类型并从 App.xaml 引用它们是否安全?
  3. 我对这些列表中的大多数进行了数据模板化,这是造成这种情况的原因吗?

提前致谢。

0 投票
2 回答
9753 浏览

wpf - 处理 MultiBinding 中绑定的 bool 回退值

我有一个MultiBinding转换器,它根据我的两个 Binding 字段是否都评估为 true 来确定控件的可见性。如果由于某种原因它无法达到这些布尔属性中的任何一个,我想将它们设置为评估为真。例如:

我目前拥有的代码是:

代码运行良好,但是我在 IDE 的输出中收到错误消息,指示:

我已经确定了这个转换器并验证了它是 XAML 错误所在的位置。抱歉这里的无知,但是有没有办法将 FallbackValue 设置为这些绑定中的每一个,以便在无法获取设置路径时评估为“true”?提前致谢

更新:

这是我的可见性转换器的代码(我在整个应用程序的几个地方都使用了它,只是想添加回退值):

0 投票
1 回答
461 浏览

wpf - wpf 绑定到数组索引时,fallbackvalue 似乎不起作用

我有一个简单的网格,我在其中将行高绑定到一个数组成员。但是如果用户输入错误,则内容可能会被清除,即数组索引变得无效。因此,我将 FallbackValue 设置为默认值。但这似乎不起作用。在绑定中,我使用了一个转换器,它将自定义类型转换为所需的 Double。但这不应该是问题的根源。

调试输出显示 wpf 绑定系统仍然需要数组项,即使没有项:

有任何想法吗 ?