Tag: windows phone

后台代理中的静态变量值不同

我有一个应用程序,显示一些数据,并启动后台代理,以动态更新实时切片。 由于实时磁贴内容是使用从主线程填充的一些var在后台代理中创建的,因此我决定编写一个具有静态变量和属性的类,以便在主线程之间共享,这可能是一个错误的决定,但这是我认为合理的唯一一个。线程和后台代理。 现在的问题是我在主线程中写了一个变量值,但是当后台代理执行时发现这个值为null。 为什么? 我提供了一个小例子,跳跃它足以让你理解。 静态部分 public class Vars { public static IEnumerable Contacts; public static void Test() { int num = Contacts == null ? -2 : Contacts.Count(); // num is -2 here because Contacts is null !! } } 背景技术 public class TileAgent : ScheduledTaskAgent { protected override void OnInvoke(ScheduledTask task) { // […]

如何将不同的Horizo​​ntalAlignment设置为ListBoxItems

我昨天发了一个问题,但我想我没能正确解释。 让我再尝试一次。 所以这是我的目标: 红色气泡表示传入消息,蓝色气泡表示传出消息。 我可以使用以下xaml代码更精确地描述它。 请注意,以下代码仅解释了当我的实际xaml代码(带有一些DataTemplates)编译时我希望得到的内容(WPF将使用DataTemplates为我自动填充数据)。 : 为了实现这个目标,我写道: 请注意,上面的代码中没有指定对齐,因为我真的不知道如何使用模板分别为ListBoxItem设置不同的对齐方式。 因此,这将导致默认情况下所有蓝色和红色网格都向左对齐的情况。 我的第一种方法包括一个数据模板选择器(省略了传入消息的模板): 但这没效果。 因为包装语音气泡的Grid不会自动扩展,所以Grid内Grid的对齐无关紧要(紧密配合)。 然后我去寻找如何在StackPanel扩展Grid ,并且没有运气。 经过数小时的谷歌搜索,试验和错误,我决定自己定义ItemsPanelTemplate的模板。 我的Message对象中有一个属性可以帮助我告诉来自传出消息的传入消息。 但我不知道如何创建ItemsPanelTemplate选择器(为了记录,Google告诉我Windows Phone 8不支持Style.Trigger )。 所以我的问题是: 如何为 ListBoxItems 设置不同的Horizo​​ntalAlignment ? BTW, ItemsPabelTemplate看起来像这样: 非常感谢你的耐心等待。 我已经在这里疯狂地绝望……这么浪费了很多时间……

加载图像时出现WP8 Out of Memory错误

我正在使用Windows Phone 8应用程序。 我正在研究Coverflowfunction,我正在尝试加载600项,但它总是显示Out of Memory Error 码: 我已经尝试检查它发生的原因,因为每次使用下面的代码加载图像 我尝试删除Width和Height ,它的工作原理,但我希望图像更大。 我怎样才能解决这个问题 ?

Windows Phone 8.1检查密码设置是否加载新页面

我对这个问题的情况非常类似,因为我有一个登录页面,这是我的MainPage.xaml文件,但我有另一个名为SetPassword.xaml的页面,如果用户尚未设置密码,我想加载它。 基本上这是应用程序在安装后第一次加载。 我花了好几个小时尝试各种不同的解决方案(包括我链接到的那个),但我只是没有到达任何地方,似乎很多解决方案都是针对WP7或WP8而且没有类似的解决方案WP8.1。 这是使用Windows.Storage进行的基本检查,我正在查看是否已设置密码。 Windows.Storage.ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings; Windows.Storage.StorageFolder localFolder = Windows.Storage.ApplicationData.Current.LocalFolder; if (localSettings.Values[“myPassword”] == null) { Debug.WriteLine(“Password not set”); this.Frame.Navigate(typeof(SetPassword)); } else { Debug.WriteLine(“Password is set, continuing as normal”); } 如果我将它添加到public MainPage()类,我在调试消息中返回“密码未设置”的应用程序中没有问题,但是this.frame.Navigate(typeof(SetPassword))导航从不加载SetPassword视图。 我也在OnNavigatedTo尝试了这种方法,结果完全相同。 在我的App.xaml文件中,我再次尝试了许多不同的方法,结果相同。 我可以得到调试消息但不是我正在寻找的导航。 我看了在这里实现Application_Launching的方法,以及在RootFrame.Navigating+= RootFrameOnNavigating;上实现条件导航RootFrame.Navigating+= RootFrameOnNavigating; 在这里,但显然我错过了一些东西。 希望你聪明的人可以帮助我根据条件值让我的导航工作?

WP8项目:“CompileXaml”任务意外失败

我在我的计算机上重新安装了Windows,在Visual Studio 2012 for Windows Phone中打开任何Windows Phone 8项目后,收到以下错误消息: The “CompileXaml” task failed unexpectedly. System.IO.FileNotFoundException: Could not load file or assembly ‘XamlServicesWP, Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a’ or one of its dependencies. The system cannot find the specified file. File name: ‘XamlServicesWP, Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a’ Server stack trace: at Microsoft.Silverlight.Build.Tasks.CompileXaml.GenerateCode(ITaskItem item, Boolean isApplication) at Microsoft.Silverlight.Build.Tasks.CompileXaml.Execute() at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, […]

UIElement to image file(WP7)

我有一个StackPanel ,它包含一些我希望放入图像文件的Rectangles (例如PNG)。 我正在Windows Phone 7上开发这个,我在互联网上发现的大部分信息都不适用于WP7。 我认为System.Windows.Media.Imaging命名空间是关键,但我不知道从哪里开始。 这基本上就是我想做的事情: StackPanel stack = new StackPanel(); List recList = new List(); 添加一些矩形到recList foreach(var x in recList) stack.Children.Add(x); 然后将stackpanel保存到图像文件中……

错误:System.Environment.SpecialFolder’不包含’CommonApplicationData’的定义

我有代码将文件保存在目录中的文件夹中 string timestamp = DateTime.Now.ToString(“MM-dd-yyyy.HH-mm-ss”); var file = File.Create(“Owe-Data.txt” + timestamp); var com = System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase + timestamp + @”\Data” + file; MessageBox.Show(com); if (!Directory.Exists(com)) { Directory.CreateDirectory(com); } using (var sw = new StreamWriter(com)) { sw.WriteLine(InputData); } } 我显示COM它给路径我不能看到该路径上的数据文件夹或Owe-Data文件任何人都可以告诉为什么会发生这种情况,或者我应该将当前目录中的Data文件夹保存到这个prgram运行的位置? 但我不知道如何到达那条道路。 任何解决方案 在Windows Phone 5上工作,visual studio 2008 .NET framwork 2.0

在Windows Phone 8.1中拖延UIElement的拖放

我正在使用ManipulationDelta事件处理程序在屏幕上的canvas中拖放一个简单的椭圆。 我正在几个地方使用在线发布的标准方法。 以下是我的事件处理程序中的代码: Ellipse dragableItem = sender as Ellipse; TranslateTransform translateTransform = dragableItem.RenderTransform as TranslateTransform; double newPosX = Canvas.GetLeft(dragableItem) + translateTransform.X + e.Delta.Translation.X; double newPosY = Canvas.GetTop(dragableItem) + translateTransform.Y + e.Delta.Translation.Y; if (!isCanvasBoundary(newPosX, TestCanvas.ActualWidth – dragableItem.ActualWidth, 0)) translateTransform.X += e.Delta.Translation.X; if (!isCanvasBoundary(newPosY, TestCanvas.ActualHeight – dragableItem.ActualHeight, 0)) translateTransform.Y += e.Delta.Translation.Y; 拖放操作工作正常,但是当用户开始拖动到椭圆实际改变其位置之间时,存在大约1秒的令人讨厌的延迟。 我可以通过打印到调试器看到事件处理程序本身几乎立即完成执行,所以我猜它有一些事情可以为屏幕上的所有UIElements做预编程刷新率导致这种延迟? 反正这个问题呢?

Windows Phone Back KeyPress + MessageBox在没有选择的情况下崩溃应用程序

我有一个奇怪的问题,在代码后面覆盖BackkeyPress函数,在函数内部我有一个简单的消息框来返回或取消导航(保留在当前页面中),当没有选择(ok或取消)并且Messagebox长时间打开时间,应用程序崩溃,当我尝试调试时,没有exception被抛出并且App保持状态,除非按下OK或取消,但是在正常运行(没有调试器)时崩溃是显而易见的。 protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e) { string caption = “exit?”; string message = “Do you still want to exit?”; e.Cancel = MessageBoxResult.Cancel == MessageBox.Show(message, caption, MessageBoxButton.OKCancel); base.OnBackKeyPress(e); }

JSON无法反序列化为对象,需要数组吗?

我试图获取传入的JSON项目并将它们绑定到列表框项目,但我被视觉工作室告知我需要做一个数组而不是对象? 我从来没有这样做过……任何人都知道怎么做? 我的RootObject: public class RootObject { public string url { get; set; } public string display { get; set; } public List genetics { get; set; } public List price { get; set; } public List brandMaker { get; set; } public string form { get; set; } public string dosornos { get; set; […]