我正在尝试使用新的Windows Phone 8 Live Lockscreen API创建一个Windows Phone 8应用程序(我当前发布的"The Quote"的更新).我基本上想要从应用程序包中随机选择一个图像背景,并在其上放置一个带有随机引用的文本块以创建锁屏图像.如何在后台定期任务中完成该任务?肯定有办法做到这一点(许多当前的应用程序,包括不同的天气和新闻应用程序在后台本地创建实时锁屏),但我似乎似乎无法找到如何,到目前为止没有互联网搜索给我任何东西有用.
任何帮助非常感谢!
非常感谢你!
编辑:
我能够找到一种方法来创建一个包含我的内容的UserControl并以这种方式截取它:
var bmp = new WriteableBitmap(768, 1280);
bmp.Render(LayoutRoot, null);
String tempJPEG = "TempJPEG.jpg";
var myStore = IsolatedStorageFile.GetUserStoreForApplication();
if (myStore.FileExists(tempJPEG))
{
myStore.DeleteFile(tempJPEG);
}
IsolatedStorageFileStream myFileStream = myStore.CreateFile(tempJPEG);
WriteableBitmap wb = new WriteableBitmap(bmp);
wb.SaveJpeg(myFileStream, wb.PixelWidth, wb.PixelHeight, 0, 100);
myFileStream.Close();
Run Code Online (Sandbox Code Playgroud)
这种方法给我带来三个不同的问题:
如果我没有在构造函数中设置WriteableBitmap的大小,它会错误地选择它并且锁屏是无用的.
如果我运行上面的代码,它会抛出OutOfMemory错误
在1例中,还有一个带有Control背景的问题(变黑了,即使我已经将Grid的主要背景画笔设置为ImageBrush链接到主Appx包中的本地文件.
这完全错了吗?有更好的(工作)方式吗?
非常感谢你,感谢你的帮助.
我正在建立一个摄影网站,我想创建一个漂亮的"平铺"界面,它看起来类似于新版本MSN Money Now上的界面(注意 - 该网站的新版本只能在Windows 8 PC上查看) - http://t.money.msn.com/now/.我试图在Javascript中实现这一点.
以下是带有预填充数据的示例页面:http://photoachiever.azurewebsites.net/en
我创建了Tile组 - 每个2个单位高,2个单位宽,可以包含一个大方形瓷砖,两个宽瓷砖或四个小方形瓷砖.现在,因为我希望网站具有响应能力,我想在Javascript中动态计算最佳单位大小,以便始终100%的空间被填充,而对于更宽的屏幕,例如更多的列可见,等等.它在MSN Money网站上的工作方式相同,但有两个重要区别:
1)当我的图像第一次加载时,我只是在它们的最高结果中看到它们,直到加载所有图像并执行JS的程度.MSN Money网站只显示一个绿色区域,稍后显示图像,已经适当调整大小.2)当我调整窗口大小时,它远离流动,并且主要是图像调整大小非常明显.然而,在MSN Money上,调整大小非常平滑,甚至图像似乎只是在没有故障的情况下调整大小.此外 - 他们设法使字体流畅地调整大小.
能否请您解释一下,MSN Money网站如何实现这些结果?我在Stack Overflow上看到了一些类似的问题,但它们从来没有要求各个瓷砖的宽度和高度相同,这对我的设计来说确实需要.
奖金问题:请你补充说明如何实现div的响应式动画重排?在http://www.brainyquote.com/上找到的示例- 当您更改窗口大小时,它会以动画方式回流所有引号.
编辑:我正在附加我当前的代码,这是远非正确的(性能非常低,图像首先显得过大,并且在下载后它们的大小会下降).
代码的第一部分(将所有事件附加到切片并在点击时添加动画):
function attachTileEvents() {
if ($(".tile-flow").size() >= 1) {
$(window).resize(function () {
delay(function () {
resizeTiles();
}, 100);
});
$(document).on("click", ".tile-flow .load-next-page", manualLoadContentDetection);
$(window).on("scroll", scrollLoadContentDetection);
$(document).on("touchend", scrollLoadContentDetection);
}
resizeTiles();
$(".tile .contents").each(function () {
var tile = $(this).parent()[0]
var mouse = { x: 0, y: 0, down: false };
var …Run Code Online (Sandbox Code Playgroud) 最新版本的ASP.NET包括新的身份验证框架ASP.NET Identity,它应该是所有新的和不久的ASP.NET项目和网站中用户管理的核心构建块.
我已经看到它可以很好地与WebAPI集成,但还没有看到任何集成作为移动客户端设备的身份验证的示例.例如 - 假设我有一个使用Identity实现的ASP.NET网站.现在我想为Windows 8.1和Windows Phone 8构建客户端应用程序.我看到两个主要问题限制了这一点.
首先 - ASP.NET身份显然只发布短暂的身份验证.令牌,这对移动应用程序来说是一个非常糟糕的用户体验.我已经看到了一些创建刷新令牌机制的尝试 - http://leastprivilege.com/2013/11/15/adding-refresh-tokens-to-a-web-api-v2-authorization-server/.这是一个非常好的方法,但看到一个真正内置的解决方案仍然会更有趣.
第二 - 也许更重要 - 外部身份验证提供商支持.在ASP.NET身份网站上,很容易看到通过WebAPI进行身份验证的方法,但我还没有看到这与外部身份验证一起使用.如何获得Facebook,Microsoft和Twitter的身份验证URL以及如何在应用程序内完成身份验证流程?
有没有人有这方面的经验?找到一个完整的演练会很棒,我很乐意用一些赏金点来奖励正确的解决方案:-).
asp.net authentication mobile asp.net-web-api asp.net-identity
我是Xamarin的新手,我正在创建UWP应用程序.我想知道从哪里可以设置应用程序图标图像.我已经看过关于堆栈溢出的文章和问题看起来很相似,但它仍然不清楚..
所以我的问题正是我应该改变我的图像的标志.只有24x24,如下图所示.那么其他徽章徽标等是什么?
我是否应该更改所有尺寸的徽标图像?
AppxMainfest.Xaml
<?xml version="1.0" encoding="utf-8"?>
<Package ...>
...
<Properties>
<DisplayName>StockDispatchApp.UWP</DisplayName>
<PublisherDisplayName>pci207</PublisherDisplayName>
<Logo>Assets\StoreLogo.png</Logo>
</Properties>
<Dependencies>
<TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.10240.0" MaxVersionTested="10.0.10586.0" />
</Dependencies>
<Resources>
<Resource Language="EN-US" />
</Resources>
<Applications>
<Application Id="App" Executable="StockDispatchApp.UWP.exe" EntryPoint="StockDispatchApp.UWP.App">
<uap:VisualElements DisplayName="StockDispatchApp.UWP" Square150x150Logo="Assets\Square150x150Logo.png" Square44x44Logo="Assets\Square44x44Logo.png" Description="StockDispatchApp.UWP" BackgroundColor="transparent">
<uap:LockScreen Notification="" BadgeLogo="Assets\96x96.png" />
<uap:DefaultTile Wide310x150Logo="Assets\Wide310x150Logo.png"></uap:DefaultTile>
<uap:SplashScreen Image="Assets\SplashScreen.png" />
</uap:VisualElements>
</Application>
</Applications>
<Capabilities>
<Capability Name="internetClient" />
</Capabilities>
...
Run Code Online (Sandbox Code Playgroud)
在我的应用程序中,每当出现任何未处理的异常时,我都想显示一个消息对话框。但是在抛出未处理的异常时似乎没有出现对话框消息,显示消息弹出窗口是否有效?同样在 MSDN 文档中,我没有找到太多信息。
以下是我正在使用的测试代码:
public App()
{
this.InitializeComponent();
this.Suspending += OnSuspending;
this.UnhandledException += App_UnhandledException;
}
private async void App_UnhandledException(object sender, UnhandledExceptionEventArgs e)
{
MessageDialog dialog = new MessageDialog("Unhandled Execption", "Exception");
await dialog.ShowAsync();
}
Run Code Online (Sandbox Code Playgroud) Microsoft 文档指出您可以使用 SVG 矢量图形文件设置图标:https : //docs.microsoft.com/en-us/windows/uwp/design/style/icons
但是,当我尝试使用 svg 文件设置图标时,它只显示空白:
<AppBarButton Label="BitmapIcon">
<AppBarButton.Icon>
<BitmapIcon UriSource="ms-appx:///Svg/MyButton.svg"/>
</AppBarButton.Icon>
</AppBarButton>
Run Code Online (Sandbox Code Playgroud)
这就是我将 Svg 文件添加到我的项目的方式:在项目下我创建了一个目录“Svg”,在 Svg 文件夹中我添加了文件“MyButton.svg”。此 svg 资源文件的属性设置为:
构建操作:内容
复制到输出目录:不复制
自定义工具:
自定义工具命名空间:
我使用以下方法实现了以下基准BenchmarkDotNet:
public class ForVsFillVsEnumerable
{
private bool[] data;
[Params(10, 100, 1000)]
public int N;
[GlobalSetup]
public void Setup()
{
data = new bool[N];
}
[Benchmark]
public void Fill()
{
Array.Fill(data, true);
}
[Benchmark]
public void For()
{
for (int i = 0; i < data.Length; i++)
{
data[i] = true;
}
}
[Benchmark]
public void EnumerableRepeat()
{
data = Enumerable.Repeat(true, N).ToArray();
}
}
Run Code Online (Sandbox Code Playgroud)
结果是:
BenchmarkDotNet=v0.11.3, OS=Windows 10.0.17763.195 (1809/October2018Update/Redstone5)
Intel Core i7-8700K CPU 3.70GHz (Coffee Lake), 1 CPU, 12 …Run Code Online (Sandbox Code Playgroud) 我正在构建一个使用SQLite进行数据存储的Windows应用商店应用程序.我发现,通过用户的本地文件夹可以轻松访问数据库(实际上所有应用程序都公开了所有数据).有没有办法至少弱保护数据库不被访问?
我正在使用SQLite.NET PCL库来获取我的WinRT项目,
SQliteAsyncConnection该类提供了经典SQLiteConnection方法的异步版本.但是,在项目的Github页面上,陈述如下:
请注意,使用的
Task.Run模式SQLiteAsyncConnection可以被视为反模式(库不应该提供异步方法,除非它们是真正的异步).维护此类是为了向后兼容,也适用于异步隔离很方便的用例
为什么Task.Run在这种情况下使用被认为是反模式?这允许开发人员实现他所需的目标 - 在应用程序保持响应用户输入的同时在单独的线程上运行数据库访问代码.Task.Run每次手动编写代码片段并不完全使用该类的异步版本会更好吗?
这种模式的潜在问题和挫折是什么?
我正在尝试构建我的UWP应用程序,当前尝试使用DataTemplate与x:Bind在资源字典中时,我遇到了设计器异常.
我创建了一个资源字典"ItemTemplates.xaml",其中包含相应的代码隐藏(以确保x:Bind初始化).该文件只包含一个模板:
<DataTemplate x:Key="HomeViewCategoryListItemTemplate" x:DataType="models:Category">
<Button Background="#88333333" Height="110" VerticalContentAlignment="Top" Padding="10" HorizontalAlignment="Stretch">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<TextBlock FontWeight="Light" HorizontalAlignment="Center" Text="{x:Bind Name}" FontSize="{ThemeResource TextStyleExtraLargeFontSize}" />
<TextBlock Foreground="{ThemeResource ToolTipForegroundThemeBrush}" HorizontalAlignment="Center" Margin="0,10,0,0" Text="{x:Bind Description}" Grid.Row="1" TextAlignment="Center" TextWrapping="Wrap" />
</Grid>
</Button>
</DataTemplate>
Run Code Online (Sandbox Code Playgroud)
然后我将这个资源字典添加到App.xaml,如下所示:
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="ms-appx:///Resources/Core.xaml" />
<resources:ItemTemplates />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</Application.Resources>
Run Code Online (Sandbox Code Playgroud)
现在项目无法使用,因为设计师抛出奇怪的异常,但是当我清理并重建项目并导航到HomeView.xaml页面时,设计器只显示默认的"ToString()"项(基本上列表视图只包含三次) ListView中的文本"Models.Categories"和ListView的ItemTemplate属性带有下划线并显示以下错误:
The resource "HomeViewCategoryListItemTemplate" could not be resolved.
Run Code Online (Sandbox Code Playgroud)
当我导航回App.xaml时,我看到另一个下划线(该<resources:ItemTemplates />行):
The property 'DataType' was not found in type 'DataTemplate'.
Run Code Online (Sandbox Code Playgroud)
这两个错误都是非敏感的,因为当我实际运行应用程序时,没有任何问题,一切都运行良好.到目前为止,我发现的唯一解决方法是以经典方式和"编译"方式包括ResourceDictionary两次:
<ResourceDictionary …Run Code Online (Sandbox Code Playgroud) uwp ×4
c# ×3
.net ×2
arrays ×1
asp.net ×1
async-await ×1
background ×1
binding ×1
css3 ×1
database ×1
datatemplate ×1
designer ×1
html5 ×1
icons ×1
image ×1
javascript ×1
lockscreen ×1
mobile ×1
performance ×1
resize ×1
sqlite ×1
tile ×1
xamarin ×1
xaml ×1
xbind ×1