小编Rut*_*hta的帖子

Xamarin.Forms 项目中不显示页面标题

我正在研究 Xamarin.Forms。

当我创建空白 Xamarin.Forms 项目时,在一个解决方案中创建了四个项目,一个用于 iOS,一个用于 Android,一个用于 Windows,一个是便携式项目(通用项目)。

我使用以下代码添加了一个名为“Page2.XAML”的 XAML 表单:

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="Rutul_App.Page2"
             Title="aaaa">
    <ContentPage.Content>
        <StackLayout>
            <Label Text="ABC" HorizontalOptions="Center"/>
        </StackLayout>
    </ContentPage.Content>
</ContentPage>
Run Code Online (Sandbox Code Playgroud)

并在文件背后的代码中:

namespace Rutul_App
{
    public partial class Page2 : ContentPage
    {
        public Page2()
        {
            InitializeComponent();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

在 App.cs 页面中,我添加了:

public App()
    {
        // The root page of your application
        MainPage = new NavigationPage(new Page2());
    }
Run Code Online (Sandbox Code Playgroud)

问题 :

我的问题是标题和 BackGroundImage 不显示。有很多属性不起作用。

我的页面是继承表单 ContentPage 但我无法访问 ContentPage 类的属性。属性是公开的。

为什么我的标题不显示?

c# xamarin xamarin-studio xamarin.forms

6
推荐指数
1
解决办法
1万
查看次数

如果以xamarin形式选择它,如何清除选择器?

我有两个选择器。第二个选择器取决于第一个选择器。两个选择器都从Service绑定。我正在使用字典对象将数据绑定到选择器。我没有使用MVVM模式。

  1. 第一次服务调用,其中绑定了第一个选择器的字典对象。
  2. 然后从该字典对象中填充第一个选择器。那时,第二选择器为空。
  3. 在第一个选择器调用服务的selectedIndexChange事件上,以绑定第二个选择器的字典对象。
  4. 现在,将值从字典对象填充到第二个选择器。(如果选择器已经有数据,则将Picker.Items.clear()
  5. 现在,如果我从第二个选择器中选择一个值并更改第一个选择器的值,则它在Picker.Items.clear()中给我错误

System.ArgumentOutOfRangeException:索引超出范围。必须为非负数并且小于集合的大小。

参数名称:索引

全球宣言:

Dictionary<string, string> DicObjActivityType;

Dictionary<string, string> DicObjSelfActivity;
Run Code Online (Sandbox Code Playgroud)

第一选择器selectedIndexChange事件

private async void PckrActivityType_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (sender as Picker == null)
                return;
            else
            {
                var objActivityType = sender as Picker;
                var Key = DicObjActivityType.FirstOrDefault(x => x.Value == objActivityType.Items[objActivityType.SelectedIndex]).Key;
                PickedActivityType = Key;
                if (Key != "0")
                {
                    PckrSelfActivity.IsEnabled = true;
                    await CallGetWebService_SelfActivity(Key);
                    if (PckrSelfActivity.IsEnabled == true)
                    {
                        PckrSelfActivity.Items.Clear();
                        foreach (string items in DicObjSelfActivity.Values)
                        {
                            PckrSelfActivity.Items.Add(items);
                        }
                    } …
Run Code Online (Sandbox Code Playgroud)

c# xamarin.ios xamarin.android xamarin xamarin.forms

4
推荐指数
2
解决办法
6402
查看次数

如何从我们在xamarin.forms中的应用程序打开设置?

我正在研究xamarin.forms.(仅在android中遇到以下问题)

当我的应用程序启动时,它会检查我的GPS位置是打开还是关闭.

要打开或关闭GPS位置我正在使用依赖服务.

public static bool CheckGPSConnection()
        {
            var gpsConnection = DependencyService.Get<IGPSConnectivity>();
            return gpsConnection.CheckGPSConnection();
        }
Run Code Online (Sandbox Code Playgroud)

当我来到我的应用程序的主页时,我把下面的代码

if (Device.OS == TargetPlatform.Android)
{
    if (!App.CheckGPSConnection())
    {
        bool answer = await DisplayAlert("Alert", "Would you like to start GPS?", "Yes", "No");
        if (answer)
        {
              Android.App.Application.Context.StartActivity(new Android.Content.Intent(Android.Provider.Settings.ActionLocationSourceSettings));
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但它给了我一个例外

{Android.Util.AndroidRuntimeException:从Activity上下文外部调用startActivity()需要FLAG_ACTIVITY_NEW_TASK标志.这真的是你想要的吗?在/ Users/...中的System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()[0x0000c]

我该怎么办?

android xamarin.android xamarin xamarin.forms

3
推荐指数
1
解决办法
5104
查看次数

对于c#中的某些字符串,DateTime.TryParseExact返回false

我在解析日期时面临一个问题.我做了以下常用功能.

public static string ConvertedDate(string date)
        {
            if(!string.IsNullOrEmpty(date))
            {
                DateTime returnValue;
                bool flag = DateTime.TryParseExact(date, "yyyy-MM-dd hh:mm:ss", CultureInfo.InvariantCulture, DateTimeStyles.None, out returnValue);
                return flag ? returnValue.ToString("MM.dd.yyyy") : null;
            }
            else
            {
                return null;
            }
        }
Run Code Online (Sandbox Code Playgroud)

但是很奇怪的事情发生了一些字符串被成功转换为DateTime但有些字符串返回false.

例如 :

"2017-05-11 12:00:24"这个字符串解析成功.

"2015-03-06 20:18:42"这个字符串不行.

字符串的格式相同.

我观察到,当"小时(hh)"超过12时,则无法解析.

c# asp.net xamarin c#-6.0 xamarin.forms

0
推荐指数
1
解决办法
635
查看次数