小编mis*_*iga的帖子

Xamarin在android更改取消文本上形成Picker

Android上的Xamarin.Forms.单击选择器打开对话框,否定按钮的默认文本为"取消".我该怎么改变它?

我查看了Xamarin的开源项目,他们设置了这样的正面按钮文本

builder.SetNegativeButton(global::Android.Resource.String.Cancel, (s, a) => ...
Run Code Online (Sandbox Code Playgroud)

这个方法是私有的,所以我不能覆盖类方法.

我也不能复制此类的粘贴实现,因为它的成员是Xamarn dll-s的私有...

链接到Xamarin.Forms andoid上的选择器实现:

https://github.com/xamarin/Xamarin.Forms/blob/master/Xamarin.Forms.Platform.Android/Renderers/PickerRenderer.cs

c# android picker xamarin.android xamarin.forms

9
推荐指数
1
解决办法
1520
查看次数

从数组中获取哪些值构成给定数字之和的算法

我不知道要搜索还是用Google搜索,所以我在这里问。我有一个固定大小的整数数组,并且完全符合此逻辑。

sample [1,2,4,8,16,32]
Run Code Online (Sandbox Code Playgroud)

现在给我一个数字,例如26。然后我将找到其总和将成为该数字的数字,在这种情况下为[2,8,16]

对于20的数字将是[4,16]

40是[8,32]

而对于63来说,所有这些数字[1,2,4,8,16,32]

正确的算法是什么?

我严格知道,此数字始终是先前值的两倍,这是连续存在的。以及仅来自给定数组的数字总和为给定数字,并且每个数字仅使用一次或不使用

如果将在C#方法中使用int数组和一个int值并返回包含int的int数组,则该int会从给定数组中对该数字求和。

谢谢

c# arrays algorithm math linear-algebra

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

Xamarin.Android绑定调用java Object方法

我通过名为Xamarin.GradleBinding的visual studio扩展创建了java绑定库.我添加了ru.rambler.android:swipe-layout:1.0.14包,并在使用它时SwipeLayout,一切正常.但不幸的是,它没有创建相应的C#类或类似的东西.我尝试手动添加包但仍然没有.

我检查了GitHub上源代码.SwipeLayout有一个没有参数的public void方法reset():

public void reset()
Run Code Online (Sandbox Code Playgroud)

我尝试从c#中调用此方法JNIEnv.

IntPtr type = JNIEnv.FindClass("ru/rambler/libs/swipe_layout/SwipeLayout");
IntPtr method = JNIEnv.GetMethodID(type, "reset", "()V");
try
{
    JNIEnv.CallObjectMethod(_swiper.Handle, method);
}
catch (Exception ex)
{
    var s = ex.Message;
}
Run Code Online (Sandbox Code Playgroud)

已成功找到类型和方法,但正在调用

JNIEnv.CallObjectMethod(_swiper.Handle, method);
Run Code Online (Sandbox Code Playgroud)

这个方法崩溃了应用程序,它甚至没有进入catch块.

Tt必须是_swiper.Handle第一个参数的原因. _swiper字段是类型,ViewGroup因为SwipeLayout派生自ViewGroup.我找不到如何获取视图的指针来传递该方法.

在调试时,当我调查时_swiper,它似乎是正确的实例SwipeLayout

在此输入图像描述

java xamarin.android xamarin jnienv java-binding

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

WPF DataGrid 为每个列集添加单独的边框

我试图实现每列都有自己的边框的效果,但还找不到完美的工作解决方案。 在此输入图像描述

这种外观是理想的,但这是通过在 3 列网格中放置 3 个边框来实现的,这并不灵活,因为网格列和 DataGrid 列的大小是分开调整的

<Window x:Class="WpfApp3.MainWindow"
    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:local="clr-namespace:WpfApp3" xmlns:usercontrols="clr-namespace:EECC.UserControls"
    mc:Ignorable="d"
    Title="MainWindow" Height="450" Width="800">
<Grid Background="LightGray">
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="*"/>
    </Grid.ColumnDefinitions>

    <Border Background="White" CornerRadius="5" BorderThickness="1" BorderBrush="Black" Margin="5"/>
    <Border Background="White" CornerRadius="5" BorderThickness="1" BorderBrush="Black" Margin="5" Grid.Column="1"/>
    <Border Background="White" CornerRadius="5" BorderThickness="1" BorderBrush="Black" Margin="5" Grid.Column="2"/>

    <DataGrid ItemsSource="{Binding Items}" ColumnWidth="*" AutoGenerateColumns="True" Padding="10" GridLinesVisibility="None" Background="Transparent" Grid.ColumnSpan="3">
        <DataGrid.Resources>
            <Style TargetType="{x:Type DataGridRow}">
                <Setter Property="Background" Value="Transparent"/>
            </Style>
            <Style TargetType="{x:Type DataGridColumnHeader}">
                <Setter Property="Background" Value="Transparent"/>
            </Style>
        </DataGrid.Resources>
    </DataGrid>
</Grid>
Run Code Online (Sandbox Code Playgroud)

wpf datagrid

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

在 UI 元素上方的特定位置显示弹出按钮

我有 gridView,它的项目非常简单,每个 gridViewItem 上都有按钮。在此按钮上单击我想显示一个与 gridViewItem 内容相同的浮出控件,但也显示更多数据。这一切都很简单,但我想将弹出窗口放置在 gridViewItem 上方,以使其显示的项目与 gridViewItem 项目的位置完全相同。

此技术用于 Windows 10 的应用商店应用程序。当看到用户对应用程序的评论时。单击“更多”会显示该弹出窗口。

在此输入图像描述

c# xaml gridview popup uwp

5
推荐指数
1
解决办法
2436
查看次数

xamarin形式xaml OnPlatform不适用于绑定

    <cv:BindableComboBox ItemsSource="{Binding Themes}" SelectedValue="{Binding SelectedTheme}">
      <cv:BindableComboBox.Title>
        <OnPlatform x:TypeArguments="x:String"
            iOS="{Binding ThemePickerTitle}"
            Android="{Binding ThemePickerTitle}"/>
      </cv:BindableComboBox.Title>
    </cv:BindableComboBox>
Run Code Online (Sandbox Code Playgroud)

所以我有选择器,我想将其Title绑定到ThemePickerTitle属性。如果我将其写为inline attrubute,则效果很好。但是我不想在Windows上有标题。因此,我编写OnPlatform使其仅在Ios和Droid上具有,但现在可以编译了。

c# xaml binding xamarin xamarin.forms

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

Git克隆一个分支,而不是主人

我使用Git Bash作为bitbucket.我已经创建了一堆,我推了一些提交,其他人推动了master中的提交作为例外.现在我在不同的机器上.我想克隆或下载我的分支的最新提交的解决方案,而不是主人?我怎样才能做到这一点?

git branch bitbucket git-clone git-bash

3
推荐指数
3
解决办法
2万
查看次数

Xamarin.Forms用于绑定的MarkupExtension

我想制作扩展标记以简化出价.我有字典,我将该属性绑定到视图中的Label.我有ValueConverter接受这个dictinary并且我传递了ConverterParameter,这是一个字符串,它找到了

<Label Text="{Binding Tanslations,Converter={StaticResource TranslationWithKeyConverter}, ConverterParameter='Test'}"/>
Run Code Online (Sandbox Code Playgroud)

但我必须为不同的标签做同样的事情,但关键(ConverterParameter)将是不同的,其余将保持不变

我想要一个markupextension,这将允许我写这个:

<Label Text="{local:MyMarkup Key=Test}"/>
Run Code Online (Sandbox Code Playgroud)

此标记应生成绑定到名为"Tanslations"的属性,其中valueconverter的TranslationWithKeyConverter和ConverterParameter的值为Key.

我试着这样做,但它不起作用:

public class WordByKey : IMarkupExtension
{
    public string Key { get; set; }
    public object ProvideValue(IServiceProvider serviceProvider)
    {
        return new Binding("Tanslations", BindingMode.OneWay, converter: new TranslationWithKeyConverter(), converterParameter: Key);
    }
}
Run Code Online (Sandbox Code Playgroud)

标签上没有显示任何内容.

c# data-binding converter xamarin xamarin.forms

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

Xamarin形成iOS上未显示的MasterDetailPage菜单图标

我有Xamarin.Forms项目.我在NavigationPage里面有MasterDetailPage.我设置了MasterDetailPage的图标属性,以便将图标设置为导航栏上的左上角位置.但它不起作用.

public partial class App : Application
{
    public App()
    {
        InitializeComponent();

        var masterDetailpage = new MasterDetailPage {
            Icon = "menuIcon.png",
            Master = new Page { Title = "Sample"},
            Detail = new Page()
        };

        MainPage = new NavigationPage(masterDetailpage);
    }
}
Run Code Online (Sandbox Code Playgroud)

这永远不会奏效.如果我将NavigationPage作为MasterDetailPage的Detail属性,并在Master上设置图标.有用.但是在NavigationPage中包含MasterDetailPage非常重要,反之亦然.

xaml xamarin.ios ios xamarin xamarin.forms

3
推荐指数
2
解决办法
6030
查看次数

C# 将日期时间转换为 WCF 日期时间格式

我使用 JsonNet 解析具有 DateTime 属性的 c# 对象,然后将其发布到服务器。但它返回日期格式错误。它要求采用这样的格式:

"/Date(1327572000000-1000)/"
Run Code Online (Sandbox Code Playgroud)

如何将 c# DateTime 转换为这种格式?

c# wcf json json.net

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

Asp.Net Core动态生成映像文件

如何在控制器中生成所有图像并将其作为图像文件返回?例如,如果链接是:

www.test.com/generate?width=100&height=50&color=red
Run Code Online (Sandbox Code Playgroud)

这将生成100x50的红色图像并将其返回,如果我将此链接设置为前面的图像视图源,则应绘制该图像.它应该作为一种服务,与HTML或其他平台(如iOS UIImageView和Android ImageView)没有任何连接.

c# asp.net image .net-core asp.net-core

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