现在有很多服务,很多关于该主题的搜索结果都讨论了已弃用的服务.我现在才第一次这样做.我在C#中有一个小库应用程序,我想用它来查询亚马逊服务以更新书籍封面图片,ISBN,作者等.
我已经阅读了该元素的文档,但仍然无法理解其目的是什么.以下是我在示例中看到它的示例:
<serviceHostingEnvironment>
<baseAddressPrefixFilters>
<add prefix="http://localhost:5100/"/>
</baseAddressPrefixFilters>
</serviceHostingEnvironment>
Run Code Online (Sandbox Code Playgroud)
我想了解服务节点中的基地址不起作用.我不明白这个元素实际上用于什么.
WPF XAML,我有一个我写的自定义控件包装查找.在典型的政府方式中,他们有一个查找表,可以查找所有可能的查找.我的自定义控件将抛出一个弹出式叠加层,要求他们从列表中的项目中进行选择.我的问题特别涉及从我的调用表单到我的控件属性到我的底层控制VM的数据绑定.
我正在调用这样的控件:
<Controls:LookupSelector SelectedLookupValueId="{Binding Path=DataContext.SelectedHarvestMethod, ElementName=SurveyFormWindow, Mode=TwoWay}" />
Run Code Online (Sandbox Code Playgroud)
(已删除其他垃圾邮件)在这种情况下,需要显式DataContext,因为控件的实际datacontext是其自己的视图模型.SelectedHarvestMethod是ViewModel表单上的属性.
它在"新窗体"模式下工作,控件负责设置自己的值(控件包含一个按钮,当您单击它时,会弹出一个按钮,您可以选择所需的查找数据值).这就像我说的那样工作正常,甚至可以回到上面代码中的'SelectedHarvestMethod'.我可以使用这个并且确信我的ViewModel总是将选定的id分配给该属性.
但现在我正在进行"编辑现有表单"模式,我从数据库加载数据并在视图模型中设置属性.所以我设置'SelectedHarvestMethod'并且代码工作正常(在setter中命中断点)但是'SelectedLookupValueId'上的结果setter没有被调用 - 值永远不会通过.
'SelectedLookupValueId'是控件视图模型上的DP:
public static readonly DependencyProperty SelectedLookupValueIdProperty =
DependencyProperty.Register("SelectedLookupValueId", typeof(int), typeof(LookupSelector), new UIPropertyMetadata(0));
public int SelectedLookupValueId
{
get { return (int) GetValue(SelectedLookupValueIdProperty); }
set { SetValue(SelectedLookupValueIdProperty, value); ViewModel.SetPreSelectedLookupValueId(value); }
}
Run Code Online (Sandbox Code Playgroud)
输出窗口或事件日志中没有错误或写在我的鞋底.插入的调试转换器显示绝对分配了整数值.正如评论中所提到的,VM当然会实现INotifyPropertyChanged,并且正在提升事件.
此外,实际类型是"用户控制",而不是自定义控件:它涉及XAML.
为什么不调用我的控件的属性设置器?