WP7 Marketplace中XAP文件的文件大小限制是多少?在用户需要连接到WIFI之前,您可以使用的最大XAP文件大小是多少?
基本上我在我的WP7应用程序中有一个包含3个视图的数据透视控件.在每个视图中,我正在调用我运行的3种不同Web服务中的1种.我想要做的只是在导航到特定视图时调用服务.
使用后面的代码非常简单,因为您所做的只是使用带有switch语句的选定索引,您可以相应地触发某些方法.有关如何从视图模型中实现此目的的任何想法?
注意:我正在使用MVVM Light.
更新:这是我通常使用的代码:
private void PivotItem_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
int currentPivot = ResultsPivot.SelectedIndex;
switch (currentPivot)
{
case 0:
//Fire Method 1
break;
case 1:
//Fire Method 2
break;
case 2:
//Fire Method 3
break;
default:
//Fire default method
break;
}
}
Run Code Online (Sandbox Code Playgroud) 我正在sprite kit中创建一个标签并设置初始大小.由于应用程序要进行本地化,因此其他语言中的单词可能比英语版本更长.因此,如何调整标签的字体大小以适合某个宽度,在这种情况下是按钮.
myLabel = SKLabelNode(fontNamed: "Arial")
myLabel.text = "Drag this label"
myLabel.fontSize = 20
Run Code Online (Sandbox Code Playgroud) 当我尝试在WP7应用程序中打开文件时:
IsolatedStorageFile isf = IsolatedStorageFile.GetUserStoreForApplication();
IsolatedStorageFileStream nameXmlFile = new IsolatedStorageFileStream("Names.xml", System.IO.FileMode.Open, isf);
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
IsolatedStorageFileStream上不允许操作.
我不确定为什么它没有打开,因为我在我的应用程序的其他地方使用了确切的代码,它工作正常.关于为什么会发生这种情况的任何线索?
编辑
我使用以下代码将文件添加到App.xaml.cs Application_Launching事件中的独立存储:
IsolatedStorageFile isf = IsolatedStorageFile.GetUserStoreForApplication();
IsolatedStorageFileStream feedXmlFile = new IsolatedStorageFileStream("Names.xml",System.IO.FileMode.Create, isf);
Run Code Online (Sandbox Code Playgroud) 您好我正在调用一个返回页面结果的Web服务.这些结果绑定到列表框,然后在列表框中显示它们.当我们滚动到底部时,我想在列表框的底部添加一个"查看更多"结果按钮.任何有关如何实现这一目标的资源或建议都表示赞赏.
我的应用程序完全可以识别主题 当我的应用程序被停用并且用户将主题从黑暗变为浅(让我们说)并返回到我的应用程序时,主题不会刷新.即使手机主题很轻,我的应用程序仍然是黑暗的.
我做了一些尝试,但他们报告了相同的价值观.我声明了一个名为isDarkThemeSelected的变量,将值保存在已停用的事件中,更改了主题,并返回到我的应用程序中.但是当激活事件被激活时,变量值仍然保持不变.
你有什么解决方案吗?
在Windows Phone 7应用程序中,我获得了一个CurrentPage,在特殊事件中,使用NavigationService导航到新页面:
NavigationService.Navigate(new Uri("/NewPage.xaml", UriKind.Relative));
Run Code Online (Sandbox Code Playgroud)
现在,当用户单击NewPage时,我希望应用程序跳过CurrentPage并直接转到应用程序的MainPage.
我尝试使用NavigationService.RemoveBackEntry,但这会删除MainPage而不是CurrentPage.
如何在不将当前值放在后台堆栈的情况下导航到新页面?
我一直在使用try/catch语句来解析当我解析它时元素是否存在.显然,这不是最好的方法.我一直在使用LINQ(lambda表达式)进行大部分解析,但我只是不知道如何检测元素是否存在.
我发现一些解决方案的一个大问题是它们使用的代码比使用try/catch块的代码多3-4倍,这种方法会失败.
我会假设代码看起来像这样:
if(document.Element("myElement").Exists())
{
var myValue = document.Element("myElement").Value;
}
Run Code Online (Sandbox Code Playgroud)
我确实找到了这个链接,但在我的情况下循环是不必要的,因为我可以保证它只会出现一次.此外,必须创建一个似乎不必要的虚拟元素.看起来不是检查的最佳方式(或好方法).有任何想法吗?
我创建了一个事件处理程序,它只返回调用完成时从Web服务收到的对象列表.
现在我继续在调试模式下运行应用程序并发现第一次调用该事件它完美地运行,但在完成后立即被触发第二次.我已经检查过了,我绝对相信我不会在接收器类中多次调用该事件.
这是我在应用程序中创建自定义事件处理程序的第一步,因此我不完全确定实现是100%准确.
可能导致这种情况的任何想法?我创建事件处理程序的方式是否准确?
这是DataHelper类
public class DataHelper
{
public delegate void DataCalledEventHandler(object sender, List<DataItem> dateItemList);
public event DataCalledEventHandler DataCalled;
public DataHelper()
{
}
public void CallData()
{
List<DataItem> dataItems = new List<DataItem>();
//SOME CODE THAT RETURNS DATA
DataCalled(this, dataItems);
}
}
Run Code Online (Sandbox Code Playgroud)
这是我订阅我的活动的地方:
protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)
{
GetNewDataItems();
}
private void GetNewDataItems()
{
try
{
DataHelper dataHelper = new DataHelper();
dataHelper.CallData();
dataHelper.DataCalled += new DataHelper.DataCalledEventHandler(dataHelper_DataCalled);
}
catch
{
//Handle any errors
}
}
}
void dataHelper_DataCalled(object sender, List<DataItem> …Run Code Online (Sandbox Code Playgroud) c# ×4
silverlight ×3
.net ×2
events ×1
icloud ×1
ios ×1
lambda ×1
linq ×1
linq-to-xml ×1
listbox ×1
macos ×1
marketplace ×1
mvvm ×1
mvvm-light ×1
navigation ×1
sklabelnode ×1
sprite-kit ×1
swift ×1
tvos ×1
xml ×1