问题标签 [scatterview]

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 投票
2 回答
623 浏览

c# - C# ScatterView,如何将两个项目绑定在一起以作为一个项目?

我有一个 scatterview 控件,我从 URL 加载相当大的图像。图像大小不同,有时图像太大而无法一张抓,我必须下载两半作为单独的图像。我试图将这两部分结合起来,使它们看起来和表现得像一个整体。我已经杀死了两天并接近了它,但并不完美。我尝试过的事情:将两半都添加到 StackPanel,然后用 ScatterViewItem 包装。出于某种原因,如果面板比高度宽得多,SVI 不会正确调整其尺寸。我尝试了一些方法,包括 MSDN 上建议的让 SVI 调整其内容的高度/宽度的样式。在大多数情况下效果很好,但如果图像又长又窄,它的一部分就会被剪掉*(见下文)。

将两半添加到画布中。似乎无法通过操作正确调整大小。

将两半添加到网格中。无法让两半形成一个图像。奇怪的是,整个网格被 SVI 正确显示,包括长图像。然而,这两个部分要么在每个顶部(没有水平对齐),要么相距很远(执行列 def 并将它们设置为 col 0 和 1),或者几乎完美但它们之间的间隙很小(将一个设置为左对齐,另一个右对齐)。

*到目前为止,StackPanel 似乎是最有前途的。我可以通过手动设置 SVI MinWidth 来显示整个内容,但是控件的操作命中区域大于图像本身。我一直在尝试使用图像的 SizeChanged 事件,尝试在图像实际加载时动态调整 SVI midwith,使其等于它们的组合渲染宽度,但现在它开始变得比科学更萨满教. 我正要在这件事上扔随机代码,只是希望结果会有一些用处或洞察力。我认为,部分问题在于,在将图像添加到容器中并将其包装到 SVI 中,并将 svi 添加到 scatterview 本身之后,图像源位图可能需要 5 秒才能真正下载。它告诉我,在位图准备好并渲染图像之前,每个图像的高度为 NaN,但实际高度为 87。这一切如何影响堆栈面板和 SVI 的大小,我真的不知道。

所以,也许有人有一些见解或建议可以尝试,而我一直在修补并希望从中有所收获。

0 投票
1 回答
335 浏览

wpf - WPF - 将 ScatterViewItem.Content 作为 UIElement 添加到 StackPanel

我正在尝试制作一个应用程序,您可以在其中将 ScatterViewItems 拖动到彼此旁边,并且这些项目将停靠在一起,以便您可以将它们作为单个项目移动。

现在我正在尝试创建一个StackPanel并添加两个 ScatterViewItems 停靠到它的内容,但我不确定如何以UIElement任何有意义的方式将 SVI 的内容属性转换为 a。有没有人尝试做类似的事情,或者对如何让它工作有任何想法?

0 投票
1 回答
452 浏览

wpf - Scatterview Surface2应用程序WPF中的Datagrid

我在 WPF 中的 scatterview 中放置了一个数据网格。我无法触摸并从数据网格中选择一行。在 touchdown 事件中,它返回所选单元格中的值。但它没有选择整行或突出显示它。

0 投票
2 回答
2722 浏览

c# - 鼠标双击并触摸 ScatterViewItem

我开发了一个使用一些 Microsoft Surface 控件的 WPF4 触摸应用程序。我想在 ScatterViewItem 上捕获 MouseDoubleClick 事件。当我使用鼠标时会触发该事件,但是当我使用手指时,该事件永远不会引发。为什么 ?

非常感谢。

更新

我终于编写了这段代码,以在有限的矩形(16px 宽度和高度)上重现一个简单的双击 TouchLeave 事件,并在 2 个 TouchLeave 事件之间所需的时间为 500 毫秒。这段代码没有优化,但它可以工作,如果你有什么意见,不要犹豫:)

0 投票
1 回答
849 浏览

c# - Surface SDK 中 ScatterViewItem 位置更改的事件处理程序?

有谁知道在 ScatterViewItem 失去动力并在屏幕上轻弹后停止时捕获 ScatterViewItem 位置(Center 属性)的简单方法?我设置了一个“热点”区域,一旦项目在其范围内停止,我想启动文件传输。

到目前为止,我尝试了 PropertyChanged 通知但没有成功:

ScatterViewItems 有一个 SizedChanged 事件处理程序,我用它来跟踪缩放,但是没有 TranslationChanged 事件处理程序是没有意义的。

此外,我无法为 ScatterViewItem 使用 ManipulationStarting/Delta/Completed 事件。

提前谢谢,

-Z

0 投票
1 回答
1105 浏览

c# - ScatterViewItem.Center(X 和 Y)属性返回 NaN

我有一个基于 XAML 的 XAML ScatterView,我正在以编程方式添加更多 Scatterviews(以下称为 Scatter2s)。

每个Scatter2s工作都很好 - 它们每个都包含ScatterViewItems ,而这些 s 又包含一个Ellipse形状,并且这些都按照需要完美地绘制到 Surface 上。

在尝试在两个椭圆之间画线时,我尝试获取Scatter2.[AScatterViewItem].Center.X.Y属性,因此我可以设置线的 X1Y1、X2Y2 属性,但它们返回为 NaN。我也尝试过ActualCenter导致相同结果的结果。

我最初认为这是因为我试图在屏幕上绘制椭圆之前访问这些属性,但我在绘制它们之后打印了属性值并且结果相同。

我检查以确保ScatterViewItem在绘制之前明确设置每个 s 宽度和高度,椭圆宽度和高度也是如此 - 以防万一会导致计算中心属性。

有没有比使用 Center 属性更好的方法来获取ScatterViewItem尚未明确定位的 a 的位置?

谢谢


在节点中:

在我的主要课程中

给出输出:

字符串的实际中心:NaN,NaN
字符串的中心:NaN,NaN

将 a 添加Node到 main ScatterView( context.Items.Add(svi)) 的代码在CenterToString()函数之前调用。

它与我在 SurfaceWindow 类中放置它的位置有什么关系吗?目前,一切都在onInitialised(),在调用之后base.OnInitialised

0 投票
1 回答
143 浏览

wpf - 暂停情节提要时,动画属性是否被锁定?AnimationClock 会停止吗?

问题:

当我尝试拖动任何内部的“ScatterViewItem”元素时(我猜!)它正在以某种方式访问​​“ScatterViewItem.CenterProperty”以更改元素的位置,但它没有被拖动。

这是暂停情节提要的默认行为吗?(锁定属性不被更改)

我希望我已经澄清了,提前谢谢大家

0 投票
1 回答
592 浏览

pixelsense - ScatterViewItem 的 TouchDown 事件从未引发

我正在使用 Surface Toolkit for Windows Touch Beta。TouchEvent我有一个处理ScatterViewItem.

在我的代码中,我创建了一个ScatterViewItem并将其添加到ScatterView. 到目前为止没有问题。但我想处理Touch这个问题ScatterViewItem,似乎TouchEvent从来没有提出过 a 。

这是一个小代码片段:

如果我触摸ScatterViewItem,则不会发生任何事情。

谁能给我一个提示或代码片段来解决我的问题?

0 投票
2 回答
13291 浏览

wpf - 如何在 WPF 中制作 UIElement 的屏幕截图

我在创建 scatterview 的屏幕截图时遇到问题。我的屏幕截图总是包含一个黑框。

这是我的 XAML 代码:

这是c#代码:

0 投票
2 回答
1215 浏览

c# - 在 Scatterview 中删除已在 C# LibraryStack 中使用的文件

我是 C#/WPF/Surface 编程的新手。

我正在使用 a LibraryStackin ScatterViewItema ScatterView

我通过将 a设置ObservableCollection为. 由字符串组成,这些字符串是图像的文件路径。ItemsSourceLibraryStackObservableCollection

现在我有了一个ScatterViewItem包含所有图像的拖放功能。

然后我想清除LibraryStack/中的所有图像ScatterViewItem并删除文件夹中的所有文件/图像:

屏幕上的 ScatterViewItem 是空的,但通过删除文件(File.Delete(file))总是抛出异常:

System.IO.IOException:该进程无法访问文件“xyz”,因为它正被另一个进程使用。在 System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) 在 System.IO.File.Delete(String path) ...

删除FileInfo会引发相同的异常。

我应该怎么办?