datacontext 相关问题

DataContext用于WPF,Silverlight和各种其他.NET技术。当与WPF或Silverlight一起使用时,DataContext是一个对象,其中包含表单(或Silverlight中的页面)用作其UI元素的显示源的数据。

为什么 DataTrigger 使用不正确的 DataContext?

我的项目如下所示: 任务类.cs: 命名空间 Library.TaskClassDirectory; 公共密封类 TaskClass :INotifyPropertyChanged { 公共任务类( 时间跨度计划人工成本, ...

回答 1 投票 0

ASP.NET DataContext GridView 分页[重复]

可能的重复: 数据源不支持服务器端数据分页 我有一个 GridView,它使用 LINQ 查询将数据绑定到返回的结果。我已在 gridview 上启用分页

回答 2 投票 0

WPF DataContext PropertyChanged 为空

我有两个 WPF 组件,一个包含另一个的列表。 我在父 WPF 组件中设置了 DataContext,因此我可以定义一个属性。 不幸的是,我的模型的 PropertyChanged 是

回答 1 投票 0

在数据库中对 ID 进行排序

我有一个使用 ASP.NET Core/EF 构建的 API Web 应用程序。我已创建所有模型、控制器和接口,并且能够进行 GET、POST、PUT 和 DELETE 调用。但是,当我执行 GET 操作时...

回答 1 投票 0

WPF - 访问命令的 TreeViewItem 的根 UserControl DataContext

我正在尝试执行绑定到子 TreeViewItem 的根父 UserControl 的 ViewModel 中存在的命令。这是来自绑定到根 TreeViewItems 的 ContextMenu。 TreeView 代码...

回答 1 投票 0

为什么将对象反序列化到 DataContext 会丢失所有绑定?

在我的窗口上,我这样初始化 DataContext: 公共部分类 MainWindow :MetroWindow { 私有 ViewModelData 数据; 资源管理器?资源管理器; 公共主窗口() {

回答 1 投票 0

将一个对象分配给另一个对象不会引发 WPF 中的 PropertyChanged 事件

我尝试在一个非常简单(且有效)的项目中隔离我的问题。假设我有一个包含 2 个字段的简单模型,并且我已经配置了其属性和 PropertyChanged 事件。这是一个

回答 1 投票 0

如何判断新创建的对象是否有用户设置的属性值

这可能是软件设计或模式问题。 使用 LINQ to SQL 的 C# WinForms 解决方案。 有一个表单允许用户编辑 Customer 对象的属性值。 如果用户想要创建...

回答 4 投票 0


LINQ to SQL DataContext 和连接问题

我的网站使用 LINQ to SQL 来访问两个数据库。第一个数据库是网站(我将其称为 WEBSITE)数据,第二个数据库是交易历史记录(我将其称为 WEBSITE_HIS...

回答 3 投票 0

MAUI MVVM xaml“找不到用于绑定的 DataContext”。更新的值未显示

我有两个标签字段 TabName 和 DisplayDate 以及绑定到 ViewModel 的 Collection Tasks,并且标签字段的值最初已设置,但不会出现更改。将鼠标悬停在标签上...

回答 1 投票 0

将选定的行从 WPF DataGrid 发送到 SQL 表时遇到困难

我的 WPF 应用程序遇到一个问题,我需要将选定的行从 DataGrid 发送到 SQL 数据库表。尽管实现了必要的逻辑,但负责处理的方法......

回答 1 投票 0

dataContext 有问题,它没有在数据网格中显示

看来我的dataContext有问题。假设我有一个由实体框架以数据库优先方法生成的类 tblPerson。 像这样的东西: 公共部分类 tblPerson ...

回答 1 投票 0

将 DataContext 传递给 UserControl

我有一个包含数据集的页面: protected void Page_Load(对象发送者,EventArgs e) { MyDefinedDataContext mydatacont = new MyDefinedDataContext(); } 我想传递这个数据上下文

回答 3 投票 0

从代码隐藏设置用户控件的DataContext

这应该很简单,但是它会让 VS2008 陷入严重的循环。 我正在尝试使用 MVVM 的 WPF,虽然我已经开发了大约 15 年,并且有一个比较,但我完全是新手。科学。

回答 3 投票 0

DataContext 始终只读,即使存在主键

我正在尝试更新数据库中的值,但 IsReadOnly 属性始终返回 True。据微软称,该属性 获取一个值,该值指示

回答 1 投票 0

DataContext 覆盖分配的公共变量

我目前正在使用 .NET 6 WPF,并使用自定义类并分配为 DataContext 时出现一些奇怪的行为。 我的代码如下所示: 公共部分类 EditImage :窗口 { 公开...

回答 1 投票 0

在视图模型和视图之间使用 MVVM 进行 Wpf 数据上下文绑定

我刚刚开始学习 MVVM,这似乎是基本问题,但我花了一整天的时间试图弄清楚它。 我有一个解决方案,其中包含 3 个项目,一个用于 Model,一个用于 ViewModel ...

回答 3 投票 0

如何获取 WinUI3 中 ItemsRepeater 内 UI 元素的上下文

我正在使用 WinUI3 和 C# 开发一个应用程序。 我想将快捷方式的动态设置渲染添加到我的应用程序中。因此我使用 ItemsRepeater 和 DataTemplate 来渲染

回答 1 投票 0

数据上下文冲突

<UserControl x:Class="WatermarkTextBox" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" d:DesignHeight="30" d:DesignWidth="250"> <UserControl.Resources> <BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter" /> </UserControl.Resources> <Border> <Grid x:Name="grid"> <TextBlock Text="{Binding Watermark, FallbackValue=This prompt dissappears as you type...}" Visibility="{Binding ElementName=txtUserEntry, Path=Text.IsEmpty, Converter={StaticResource BooleanToVisibilityConverter}}" /> <TextBox Name="txtUserEntry" Text="{Binding Text, UpdateSourceTrigger=PropertyChanged}" /> </Grid> </Border> </UserControl> 上面的代码显示了我的 WatermarkTextBox 控件。在文件后面的代码中,我设置了 DataContext。我省略了控件 DP 的所有代码。 public WatermarkTextBox() { InitializeComponent(); grid.DataContext = this; } 我必须将 DataContext 绑定到网格,否则水印和实际文本的 Text 属性将不会显示。现在的问题是我无法将Background的Border设置在Grid之外。 我尝试了下面的代码,但只设置了 Background 的 Border,而不是水印和实际文本。 public WatermarkTextBox() { InitializeComponent(); this.DataContext = this; grid.DataContext = this; } 在这样的 UserControl 中,您永远不应该将 DataContext 显式设置为 this 或其他任何值,因为当您在应用程序中的某个位置使用 UserControl 时,DataContext 通常是在外部设置的。外部应用的 DataContext 通常是应用程序视图模型(的一部分)。 您应该更改内部绑定,以便它们使用显式 RelativeSource: <TextBlock Text="{Binding Path=Watermark, RelativeSource={RelativeSource AncestorType=UserControl}, FallbackValue=This prompt dissappears as you type...}" Visibility="{Binding ElementName=txtUserEntry, Path=Text.IsEmpty, Converter={StaticResource BooleanToVisibilityConverter}}" /> <TextBox Name="txtUserEntry" Text="{Binding Path=Text, UpdateSourceTrigger=PropertyChanged, RelativeSource={RelativeSource AncestorType=UserControl}}" /> 然后从 UserControl 的构造函数中删除任何 DataContext 赋值。 参见例如这个答案(以及许多其他类似的答案)详细讨论了这个主题。 @Clemens 答案的附录: 为了避免为每个控件设置 RelativeSource={RelativeSource AncestorType=UserControl},请在用户控件中提供一个根元素来获取 DataContext。 <UserControl x:Class="UserControlBindingIssue.TestUserControl" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:UserControlBindingIssue" d:DataContext="{d:DesignInstance Type=local:TestUserControl, IsDesignTimeCreatable=True}" mc:Ignorable="d"> <ContentControl DataContext="{Binding RelativeSource={RelativeSource AncestorType={x:Type local:TestUserControl}}}"> <TextBox Width="100" Text="{Binding Text, UpdateSourceTrigger=PropertyChanged}" /> <!-- Other controls --> </ContentControl> </UserControl>

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.