嗨
试图更新到最新版本,但在GitHub操作的输出中显示:
'DataSourceRequest'类型定义在未引用的程序集中。您必须向程序集“Telerik”添加引用。= 2.1.3.0数据源,版本
然而,在我的csproj我引用
什么好主意吗?
当使用Enter键选择项目时,该值不会显示在输入字段中。
繁殖项目被选中,但其值不会显示在输入字段中。
= = =
这个问题也可以用MultiColumnComboBox组件重现。
在向下滚动第一页然后分页之后,有了一个可分页的网格,下一页应该滚动到顶部——但事实并非如此。
有没有办法通过代码向上滚动,直到这个问题得到解决??
----
管理编辑
本文末尾附有一个示例解决方案,它向您展示了如何实现这一目标。
----
键盘支持只有当ChipList绑定到List
我希望左箭头将导航到列表中的前一个芯片。(顺便说一句,我建议让向下箭头和向上箭头模仿左右箭头,因为屏幕阅读器用户不一定知道chiplist是水平的。)
问题的一个例子可以在这个演示中找到:
https://blazorrepl.telerik.com/wdEQFzbC495I2bCP51
下面是一个示例,我将返回的列表转换为list
https://blazorrepl.telerik.com/cRYwFJvM52yemqN404
在这个例子中,左箭头正常工作。
这是一个REPL测试页.如果用户通过Wizard按钮向前和向后导航,则TreeView复选框将保持其状态。如果用户通过步进导航,则复选框状态不会保留。
该问题由TabStrip触发。
一个可能的解决方案是防止步进点击CSS:
.k-tabstrip跨度><跨度类="hljs-selector-class">.k-wizard跨度><跨度类="hljs-selector-class">.k-stepper跨度><跨度类="hljs-selector-class">.k-step跨度>{<跨度类="hljs-attribute" style="color: #a31515">pointer-events跨度>:没有;}
你好,
如果我在运行时禁用一个Menu项,它将禁止通过鼠标访问子项,但如果我使用键盘导航,它仍然会打开子项组。
下面是一个测试页面,其中包含一个解决方案(即重新创建菜单)。
< TelerikButton OnClick =<跨度类="hljs-string" style="color: #a31515">“@DisableItem”跨度>>禁用Servic万博体育手机版网址es项 . >禁用Services项<<跨度类="hljs-name" style="color: #0000ff">TelerikButton跨度><跨度类="hljs-attr" style="color: #ff0000">OnClick跨度>=<跨度类="hljs-string" style="color: #a31515">“@EnableItem”跨度>>跨度>启用服务项万博体育手机版网址<跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">TelerikButton跨度>>跨度>跨度><跨度类="hljs-meta" style="color: #2b91af">@ if跨度>(ShowMenu) {<跨度类="xml"><<跨度类="hljs-name" style="color: #0000ff">TelerikMenu跨度><跨度类="hljs-attr" style="color: #ff0000">数据跨度>=<跨度类="hljs-string" style="color: #a31515">“@MenuItems”跨度>/>跨度>跨度>}<跨度类="hljs-meta" style="color: #2b91af">@code跨度>{<列表菜单Item> MenuItems {get;设置;} bool ShowMenu{获取;设置;} =<跨度类="hljs-literal" style="color: #a31515">真正的跨度>;<跨度类="hljs-keyword" style="color: #0000ff">异步跨度>任务<跨度类="hljs-function">DisableItem跨度>(<跨度类="hljs-params">)跨度>{子菜单。找到(<跨度类="hljs-function">x跨度>=>跨度>x.Text = =<跨度类="hljs-string" style="color: #a31515">“万博体育手机版网址服务”跨度>).禁用=<跨度类="hljs-literal" style="color: #a31515">真正的跨度>;菜单项=<跨度类="hljs-keyword" style="color: #0000ff">新跨度><菜单项列表>(菜单项);<跨度style="background-color: #b5e61d">//解决方案启动跨度><跨度style="background-color: #b5e61d">ShowMenu =跨度><跨度类="hljs-literal" style="color: #a31515; background-color: #b5e61d">假跨度><跨度style="background-color: #b5e61d">;跨度><跨度类="hljs-keyword" style="color: #0000ff; background-color: #b5e61d">等待跨度><跨度style="background-color: #b5e61d">的任务。延迟(跨度><跨度类="hljs-number" style="background-color: #b5e61d">1跨度><跨度style="background-color: #b5e61d">);ShowMenu =跨度><跨度类="hljs-literal" style="color: #a31515; background-color: #b5e61d">真正的跨度><跨度style="background-color: #b5e61d">;跨度><跨度类="hljs-comment" style="color: #008000; background-color: #b5e61d">//解决方案结束跨度>}<跨度类="hljs-keyword" style="color: #0000ff">异步跨度>任务<跨度类="hljs-function">EnableItem跨度>(<跨度类="hljs-params">)跨度>{子菜单。找到(<跨度类="hljs-function">x跨度>=>跨度>x.Text = =<跨度类="hljs-string" style="color: #a31515">“万博体育手机版网址服务”跨度>).禁用=<跨度类="hljs-literal" style="color: #a31515">假跨度>;菜单项=<跨度类="hljs-keyword" style="color: #0000ff">新跨度><菜单项列表>(菜单项);}<跨度类="hljs-keyword" style="color: #0000ff">受保护的跨度>覆盖<跨度类="hljs-built_in" style="color: #0000ff">无效跨度><跨度类="hljs-function">OnInitialized跨度>(<跨度类="hljs-params">)跨度>{菜单项=<跨度类="hljs-keyword" style="color: #0000ff">新跨度><菜单项列表> (){<跨度类="hljs-keyword" style="color: #0000ff">新跨度><跨度类="hljs-function">子菜单跨度>(<跨度类="hljs-params">)跨度>{文本=<跨度类="hljs-string" style="color: #a31515">“公司”跨度>, Items =<跨度类="hljs-keyword" style="color: #0000ff">新跨度><菜单项列表> (){<跨度类="hljs-keyword" style="color: #0000ff">新跨度><跨度类="hljs-function">子菜单跨度>(<跨度类="hljs-params">)跨度>{文本=<跨度类="hljs-string" style="color: #a31515">“概述”跨度>},<跨度类="hljs-keyword" style="color: #0000ff">新跨度><跨度类="hljs-function">子菜单跨度>(<跨度类="hljs-params">)跨度>{文本=<跨度类="hljs-string" style="color: #a31515">“事件”跨度>}}},<跨度类="hljs-keyword" style="color: #0000ff">新跨度><跨度类="hljs-function">子菜单跨度>(<跨度类="hljs-params">)跨度>{文本=<跨度类="hljs-string" style="color: #a31515">“万博体育手机版网址服务”跨度>, Items =<跨度类="hljs-keyword" style="color: #0000ff">新跨度><菜单项列表> (){<跨度类="hljs-keyword" style="color: #0000ff">新跨度><跨度类="hljs-function">子菜单跨度>(<跨度类="hljs-params">)跨度>{文本=<跨度类="hljs-string" style="color: #a31515">“咨询”跨度>},<跨度类="hljs-keyword" style="color: #0000ff">新跨度><跨度类="hljs-function">子菜单跨度>(<跨度类="hljs-params">)跨度>{文本=<跨度类="hljs-string" style="color: #a31515">“教育”跨度>}}}};base.OnInitialized ();}<跨度类="hljs-keyword" style="color: #0000ff">公共跨度><跨度类="hljs-class">类跨度><跨度类="hljs-title" style="color: #a31515">子菜单跨度>跨度>{<跨度类="hljs-keyword" style="color: #0000ff">公共跨度><跨度类="hljs-built_in" style="color: #0000ff">字符串跨度>文本{get;设置;}<跨度类="hljs-keyword" style="color: #0000ff">公共跨度>bool禁用{get;设置;}<跨度类="hljs-keyword" style="color: #0000ff">公共跨度><列表菜单Item> Items {get;设置;}}}
在聚焦的搜索框中按下Espace将抛出一个“错误:系统。ObjectDisposedException: The CancellationTokenSource has been dispose ."异常。
< AdminEdit >
在发布修复之前解决问题的解决方案。
<<跨度类="hljs-name" style="color: #0000ff">TelerikDialog跨度>@<跨度类="hljs-attr" style="color: #ff0000">bind-Visible跨度>=<跨度类="hljs-string" style="color: #a31515">“@Visible”跨度><跨度类="hljs-attr" style="color: #ff0000">标题跨度>=<跨度类="hljs-string" style="color: #a31515">“@Title”跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">DialogContent跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">TelerikGrid跨度><跨度类="hljs-attr" style="color: #ff0000">数据跨度>=<跨度类="hljs-string" style="color: #a31515">@GridData跨度><跨度类="hljs-attr" style="color: #ff0000">可分页跨度>=<跨度类="hljs-string" style="color: #a31515">“真正的”跨度><跨度类="hljs-attr" style="color: #ff0000">高度跨度>=<跨度类="hljs-string" style="color: #a31515">“400 px”跨度><跨度类="hljs-attr" style="color: #ff0000">宽度跨度>=<跨度类="hljs-string" style="color: #a31515">“700 px”跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">GridToolBar跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">跨度跨度><跨度类="hljs-attr" style="color: #ff0000">类跨度>=<跨度类="hljs-string" style="color: #a31515">“k-toolbar-spacer”跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">跨度跨度>>跨度>添加这个空格以保持搜索框在右边<跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">div跨度>跨度><跨度类="hljs-tag" style="color: #0000ff">onkeydown=“event.stopPropagation()”>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">GridSearchBox跨度>/>跨度><跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">div跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">GridToolBar跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">GridColumns跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">GridColumn跨度><跨度类="hljs-attr" style="color: #ff0000">场跨度>=<跨度类="hljs-string" style="color: #a31515">“@ (nameof (Employee.EmployeeId))”跨度>/>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">GridColumn跨度><跨度类="hljs-attr" style="color: #ff0000">场跨度>=<跨度类="hljs-string" style="color: #a31515">@nameof (Employee.Name)跨度>/>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">GridColumn跨度><跨度类="hljs-attr" style="color: #ff0000">场跨度>=<跨度类="hljs-string" style="color: #a31515">@nameof (Employee.Team)跨度><跨度类="hljs-attr" style="color: #ff0000">标题跨度>=<跨度类="hljs-string" style="color: #a31515">“团队”跨度>/>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">GridColumn跨度><跨度类="hljs-attr" style="color: #ff0000">场跨度>=<跨度类="hljs-string" style="color: #a31515">@nameof (Employee.IsOnLeave)跨度><跨度类="hljs-attr" style="color: #ff0000">标题跨度>=<跨度类="hljs-string" style="color: #a31515">“度假”跨度>/>跨度><跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">GridColumns跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">TelerikGrid跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">DialogContent跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">TelerikDialog跨度>>跨度>@code {private bool可见{获取;设置;} = true;私有字符串Title {get;设置;} = "软件更新";公共列表<跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">员工跨度>>跨度>网格数据{get;设置;} protected override void OnInitialized() {GridData =新列表<跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">员工跨度>>跨度>();varrand = new Random();For (int I = 0;I < 15;i++) {GridData。Add (新员工(){员工Id=i, Name = "Employee " + i.ToString(), Team = "Team " + i % 3, IsOnLeave = i % 2 == 0 }); } } public class Employee { public int EmployeeId { get; set; } public string Name { get; set; } public string Team { get; set; } public bool IsOnLeave { get; set; } } }
< / AdminEdit >
TreeView有CheckBoxMode = " @TreeViewCheckBoxMode。多个“而且CheckParents = " true ".只有一些复选框被选中,并且有父复选框处于不确定状态。
当我尝试清除所有选中的复选框时,不确定的复选框不会被清除并保持其状态。
承认编辑:
最初,这个错误报告是关于取消选中所有子项的。然而,似乎也存在相反的行为——如果以编程方式选中所有子元素,父元素复选框将显示为不确定。在这种情况下,还要显式地检查父节点。
的复选框按需加载子节点然后折叠并重新打开它的父节点会使复选框消失。然而,它仍然在CheckedItems集合中被检查,只是不在UI中。看到这个REPL例子.步骤……
1.展开顶级项
2.选中它的子复选框
3.折叠顶层项目
4.再次展开
结果:复选框消失(在UI中)
如果应用程序以编程方式展开TreeView项,然后用户尝试选择多个项,则会出现异常。
该问题是3.0.0版本中出现的回归。跨度>一个可能的解决办法是重新绑定()
在编程项展开后具有小延迟的TreeView。
< TelerikTreeView<跨度类="hljs-meta" style="color: #2b91af; background-color: #b5e61d">@ref跨度><跨度style="background-color: #b5e61d">=跨度><跨度类="hljs-string" style="color: #a31515; background-color: #b5e61d">“@TreeViewRef”跨度>数据=<跨度类="hljs-string" style="color: #a31515">“@FlatData”跨度><跨度类="hljs-meta" style="color: #2b91af">@bind跨度>-ExpandedItems =<跨度类="hljs-string" style="color: #a31515">“@ExpandedItems”跨度>SelectionMode =<跨度类="hljs-string" style="color: #a31515">“@TreeViewSelectionMode。多个“跨度>设置selecteditem =<跨度类="hljs-string" style="color: #a31515">“@SelectedItems”跨度>SelectedItemsChanged =<跨度类="hljs-string" style="color: #a31515">"@((IEnumerable
OnRowRender在版本4风格中是通过一行应用的。
@*行(包括锁定/冻结列)的条件样式/格式。* @下面是一个TelerikForm,其中有一个用于布尔字段的FormItem(1)。根据布尔字段(1),应该呈现另一个FormItem(2)。这对TelerikForm无效,但对标准EditForm有效。
TelerikForm的解决方法是使用带有TelerikCheckBox的FormItem模板。下面也演示了这一点。
< EditForm模型=<跨度类="hljs-string" style="color: #a31515">“@_data”跨度>><跨度类="xml"><<跨度类="hljs-name" style="color: #0000ff">标签跨度>>跨度>条件1(输入checkbox):<跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">标签跨度>>跨度>跨度><跨度类="xml"><<跨度类="hljs-name" style="color: #0000ff">InputCheckbox跨度>@<跨度类="hljs-attr" style="color: #ff0000">bind-Value跨度>=<跨度类="hljs-string" style="color: #a31515">“@_data。Value1”跨度>/>跨度>跨度><跨度类="xml"><<跨度类="hljs-name" style="color: #0000ff">br跨度>/>跨度>跨度>@<跨度类="hljs-keyword" style="color: #0000ff">如果跨度>(_data.Value1) {<跨度类="xml"><<跨度类="hljs-name" style="color: #0000ff">标签跨度>>跨度>结果2<跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">标签跨度>>跨度>跨度><跨度类="xml"><<跨度类="hljs-name" style="color: #0000ff">InputCheckbox跨度><跨度类="hljs-attr" style="color: #ff0000">DisplayName跨度>=<跨度类="hljs-string" style="color: #a31515">“结果2:跨度>@<跨度类="hljs-attr" style="color: #ff0000">bind-Value跨度>=<跨度类="hljs-string" style="color: #a31515">“@_data。Value2”跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">InputCheckbox跨度>>跨度>跨度>} EditForm ><跨度类="xml"><<跨度类="hljs-name" style="color: #0000ff">h1跨度>>跨度>TelerikForm<跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">h1跨度>>跨度>跨度><跨度类="xml"><<跨度类="hljs-name" style="color: #0000ff">TelerikForm跨度><跨度类="hljs-attr" style="color: #ff0000">模型跨度>=<跨度类="hljs-string" style="color: #a31515">“@_data”跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">FormItems跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">FormItem跨度><跨度类="hljs-attr" style="color: #ff0000">LabelText跨度>=<跨度类="hljs-string" style="color: #a31515">"条件1 (FormItem):"跨度><跨度类="hljs-attr" style="color: #ff0000">场跨度>=<跨度类="hljs-string" style="color: #a31515">“@nameof (_data.Value1)”跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">FormItem跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">FormItem跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">模板跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">标签跨度><跨度类="hljs-attr" style="color: #ff0000">为跨度>=<跨度类="hljs-string" style="color: #a31515">“x”跨度>>跨度>条件1 (TelerikCheckBox):<跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">标签跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">br跨度>/>跨度><跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">TelerikCheckBox跨度><跨度类="hljs-attr" style="color: #ff0000">Id跨度>=<跨度类="hljs-string" style="color: #a31515">“x”跨度>@<跨度类="hljs-attr" style="color: #ff0000">bind-Value跨度>=<跨度类="hljs-string" style="color: #a31515">“_data。Value1”跨度>/>跨度><跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">模板跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">FormItem跨度>>跨度>@如果(_data.Value1) {<跨度类="hljs-tag" style="color: #0000ff"><<跨度类="hljs-name" style="color: #0000ff">FormItem跨度><跨度类="hljs-attr" style="color: #ff0000">LabelText跨度>=<跨度类="hljs-string" style="color: #a31515">“结果2:跨度><跨度类="hljs-attr" style="color: #ff0000">场跨度>=<跨度类="hljs-string" style="color: #a31515">“@nameof (_data.Value2)”跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">FormItem跨度>>跨度>}<跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">FormItems跨度>>跨度><跨度类="hljs-tag" style="color: #0000ff"><跨度类="hljs-name" style="color: #0000ff">TelerikForm跨度>>跨度>跨度>@code {private ExampleDto _data {get;设置;} =<跨度类="hljs-keyword" style="color: #0000ff">新跨度>ExampleDto();公共<跨度类="hljs-class">类跨度><跨度类="hljs-title" style="color: #a31515">ExampleDto跨度>跨度>{公共字符串TextValue{获取;设置;} public bool Value1 {get;设置;} public bool Value2 {get;设置;}}}
你好,
我似乎无意中发现了TelerikGrid的一个奇怪漏洞。我们已经包装了一个TelerikGrid, column也被包装以允许特殊操作。
该漏洞也出现在“原始telerik代码”中。
我们有一个边缘情况,我们有一个TelerikGrid和它的一些列应该锁定(粘/冻结)作为默认行为。
但是根据用户交互,我们想要改变状态。我们不能为我们想要锁定/解锁的每一列都使用属性,因为它应该由GridState处理。
当列使用默认行为(不是Templated)时,它会按预期工作。但是一旦您为列使用,锁定状态就不能从默认/提供的值更改。
TLDR:以编程方式更改单元格模板所在列的锁定状态不会更改锁定状态。
我准备了两个REPL示例。一个用于3.7.0,因为它是我们目前正在使用的,另一个用于4.0.1,以证明它仍然存在于当前迭代中。
3.7.0
https://blazorrepl.telerik.com/cHEHurlI06olUsJ410
4.0.1
https://blazorrepl.telerik.com/cdYRuBvo07aB6BGY39
谨致敬礼
的可见参数在设置为时删除底层呈现片段假.
请公开api(可能是Show/Hide方法)来保持DOM在树中,但只修改可见性/显示CSS属性来隐藏/显示telerik窗口元素。这将允许开发人员保留可能需要频繁显示的窗口的内容/状态。
例如,我有像下面这样的DTO,如何在表单上,我将从显示名称的值中获取FormItem的显示标签
公共类DepartmentRequestDTO