我有一个订单列表,当订单状态为Cancelled时,我想要闪烁文本.到目前为止,我的代码工作.但是,有时会抛出异常:
WinRT信息:无法解析TargetName lblOrderStatus
由于某种原因,可以找到lblOrderStatus.所以,我想使用"FindAncestor",但UWP中不存在FindAncestor.在uwp中是否有与FindAncestor等效的功能?
这是我的代码:
<ItemsControl x:Name="Orders" Grid.Row="1" Background="Transparent">
...
...
...
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
...
...
...
<Viewbox Grid.Column="3" StretchDirection="DownOnly" HorizontalAlignment="Right">
<TextBlock x:Name="lblOrderStatus" Text="{Binding Path=OrderItemStatus, Mode=OneWay}" FontSize="18">
<TextBlock.Resources>
<Storyboard x:Name="sbBlinking">
<DoubleAnimation Storyboard.TargetProperty="(FrameworkElement.Opacity)"
Storyboard.TargetName="lblOrderStatus"
From="1" To="0" AutoReverse="True" Duration="0:0:0.5" RepeatBehavior="Forever" />
</Storyboard>
</TextBlock.Resources>
<interactive:Interaction.Behaviors>
<core:DataTriggerBehavior Binding="{Binding OrderItemStatus, Converter={StaticResource EnumToStringConverter}}" ComparisonCondition="Equal" Value="Cancelled">
<media:ControlStoryboardAction Storyboard="{StaticResource sbBlinking}" />
</core:DataTriggerBehavior>
</interactive:Interaction.Behaviors>
</TextBlock>
</Viewbox>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
Run Code Online (Sandbox Code Playgroud) 有没有办法从UWP应用程序打印PDF?除了将其渲染为png
或BitmapImage
.
我查看了Microsoft 打印样本和pdf渲染示例,通过将其渲染为bitmapimage来实现打印pdf.但是,它失去了pdf的质量.想知道是否有任何其他有效的方法可用而不使用库.
我试图在不使用库的情况下找到Microsoft的直接解决方案.但是,在微软PDfSharp
的帮助下AppServiceBridge
,我没有任何解决方案 .我使用了AppService网桥,因为PdfSharp不能直接用于WinRT.
我想知道是否有任何方式重现相同的行为,而不是DockPanel
在WPF,但在UWP应用程序?
我想有一些容器停靠,最后一个填充用户界面?
谢谢
我正在尝试创建一个UWP按钮,当鼠标指针悬停在它上面时会改变背景颜色.我遇到的麻烦是,默认情况下,似乎已经这样做了,但不是我想要的颜色.当我将鼠标悬停在我的按钮(红色)上时,它会变为默认灰色,然后在我鼠标移出时返回.我在C#中编写代码,试图在我将鼠标悬停在它上面时变成蓝色
private void button_PointerEntered_1(object sender, PointerRoutedEventArgs e)
{
button.Background = new SolidColorBrush(Windows.UI.Color.FromArgb(255, 0, 0, 255));
}
private void button_PointerExited_1(object sender, PointerRoutedEventArgs e)
{
button.Background = new SolidColorBrush(Windows.UI.Color.FromArgb(255, 255, 0, 0));
}
Run Code Online (Sandbox Code Playgroud)
下面是按钮的XAML代码
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Button x:Name="button"
Content="Button"
HorizontalAlignment="Left"
Margin="417,188,0,0"
VerticalAlignment="Top"
Height="230"
Width="461"
FontSize="72"
ManipulationMode="None"
PointerEntered="button_PointerEntered_1"
PointerExited="button_PointerExited_1">
<Button.Foreground>
<SolidColorBrush Color="Black"/>
</Button.Foreground>
<Button.Background>
<SolidColorBrush Color="Red"/>
</Button.Background>
</Button>
</Grid>
Run Code Online (Sandbox Code Playgroud) 可以使用ObjectDataProvider
WPF应用程序将枚举的字符串值绑定到ComboBox的ItemsSource,如此问题所示.
但是,在UWP应用程序中使用类似的代码段时,ff.显示错误消息:
"Windows Universal项目不支持ObjectDataProvider."
在UWP中有一个简单的替代方法吗?
有人可以解释的意义操纵模式,例如TranslateX
,TranslateRailsX
,TranslateInertia
?什么是rail mode
?他们在说什么惯性?
我正在为Win10移植一个Win8.1应用程序到UWP并遇到一个奇怪的问题AppBar
.我们尝试使用CommandBar
而不是AppBar
,但问题仍然发生在我们身上.我们使用的是MyToolkit的最新版本(撰写本文时为2.5.16).我们的观点如下:
SomeView
从导出BaseView
dervices从MtPage
(从导出Page
)
因此,对于特定视图(在本例中HomeView
),XAML看起来像:
<views:BaseView
x:Name="pageRoot"
x:Class="OurApp.HomeView"
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"
xmlns:controls="using:OurApp.Controls"
xmlns:views="using:OurApp.Views"
xmlns:viewModels="using:ViewModels"
xmlns:fake="using:ViewModels.Fake"
mc:Ignorable="d" >
<views:BaseView.TopAppBar>
<AppBar>
<controls:NavigationView
x:Name="NavigationView">
<controls:NavigationView.Context>
<viewModels:NavigationViewModel />
</controls:NavigationView.Context>
</controls:NavigationView>
</AppBar>
</views:BaseView.TopAppBar>
<!-- other stuff not relevant to AppBars, etc -->
</views:BaseView>
Run Code Online (Sandbox Code Playgroud)
哪里NavigationView
是UserControl
有一些按钮,并NavigationViewContext
和NavigationViewModel
描述了按钮应该是其网页上的活跃,等等.
问题是,这会产生一种半开,半闭的AppBar
外观(几乎但不完全像ClosedDisplayMode
设置的Compact
那样),如下所示:
加入后ClosedDisplayMode="Minimal"
的<AppBar>
控制,在提到这个问题时,现场可视化树证实AppBar具有IsOpen = 0
与AppBarClosedDisplayMode.Minimal …
有没有办法(C#或XAML)我可以最大化UWP应用程序窗口,即使我之前在桌面上调整大小并关闭它?
我尝试过,ApplicationViewWindowingMode.FullScreen
但这使得应用程序全屏显示并覆盖了Widnows任务栏.
我有一个基本的UWP应用程序,内嵌WebView呈现相当大的HTML文档(最多500个字母大小的打印页面).
我想添加对打印HTML文档的支持.这是我的方法:
<div style="height:100vh">
,每个"页面" 使用一个,最多500个.WebView
XAML页面上隐藏的第二个,我根据用户选择的页面大小调整大小以适合一页.scrollY
仅使用JavaScript显示当前页面:window.scrollTo(0, -pageOffset)
WebViewBrush
用来捕获当前页面的快照WebView
问题:
我可以生成所有500页的打印预览,但有时预览会丢失页面而其他页面会多次显示.
我怀疑这是因为我WebViewBrush.Redraw()
用来捕获滚动的WebView的快照,但文档说是Redraw()
异步发生的.我可能会在WebViewBrush有机会重绘之前滚动浏览当前页面,从而意外地捕获下一页.
如何确保WebViewBrush已捕获WebView以便我可以滚动到下一页?
我的代码生成一个页面:
private async Task<Rectangle> MakePage(WebView webView,
Size pageSize, double pageOffset)
{
// Scroll to next page:
await webView.EvaluateJavaScriptSnippetAsync(
$"window.scrollTo(0, {pageOffset})");
var brush = new WebViewBrush();
brush.Stretch = Stretch.Uniform;
brush.SetSource(webView);
brush.Redraw(); // XXX Need to wait for this, but there's no API
// Add a delay hoping Redraw() finishes... I …
Run Code Online (Sandbox Code Playgroud) 给定WPF中的Visual Tree,可以指定AttachedProperties继承如下:
public static class MyClass
{
public static readonly DependencyProperty FooProperty =
DependencyProperty.RegisterAttached(
"Foo", typeof(string), typeof(MyClass),
new FrameworkPropertyMetadata(
"AString",
FrameworkPropertyMetadataOptions.Inherits));
}
Run Code Online (Sandbox Code Playgroud)
在UWP中,没有FrameworkPropertyMetadata,因此您无法指定FrameworkPropertyMetadataOptions.Inherits.
我曾希望默认行为是继承DependencyProperty值,但事实并非如此.
UWP中是否有任何等价物允许继承DependencyProperty 值?