小编Mad*_*noy的帖子

Xamarin使用StyleClass和Style属性表单样式

我们正在构建一个Xamarin Forms应用程序,我们注意到我们可以通过在App.xaml ResourceDictionary中创建样式来以两种方式设置元素样式

Class和StyleClass选项

在App.xaml中我们会写

        <Style Class="EntryStandard" TargetType="Entry">
            <Setter Property="TextColor" Value="#575e62" />
            <Setter Property="BackgroundColor" Value="#9facb3" />
            <Setter Property="FontSize" Value="14" />
        </Style>
Run Code Online (Sandbox Code Playgroud)

然后,这将在其中一个内容页面中使用

<Entry StyleClass="EntryStandard" Placeholder="Login Name" Text="{Binding EntryEmailAddress}" />
Run Code Online (Sandbox Code Playgroud)

键和样式选项

这是我们在App.xaml下编写的内容

      <Style x:Key="ButtonMainMenu_Purple" TargetType="Button">
            <Setter Property="BackgroundColor" Value="#5d4785" />
            <Setter Property="FontSize" Value="14" />
            <Setter Property="TextColor" Value="#FFFFFF" />
        </Style>
Run Code Online (Sandbox Code Playgroud)

然后我们在内容页面中使用以下内容

<Button Style="{StaticResource ButtonMainMenu_Purple}" Text="Friends" Command="{Binding OnFriendsButtonCommand}" />
Run Code Online (Sandbox Code Playgroud)

两者都很好,我只是想知道哪一个比另一个好,为什么?

xaml styles xamarin.forms

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

当动态更改背景时,Xamarin Custom Frame会导致Java.Lang.NullPointerException

我有一个Xamarin Forms Frame的自定义渲染器:CustomFrameRenderer.Xaml示例如下

<controls:ExtendedFrame Margin="2,0,2,0"
                                    BackgroundColor="Red"
                                    HorizontalOptions="FillAndExpand"
                                    OutlineColor="Red"
                                    Padding="0,0,0,0">
<Label Text="This is a test"/>
</controls:ExtendedFrame>
Run Code Online (Sandbox Code Playgroud)

问题是,如果我将bacground颜色绑定到这样的属性,

 <controls:ExtendedFrame Margin="2,0,2,0"
                                    BackgroundColor="{Binding FrameBackground}"
                                    HorizontalOptions="FillAndExpand"
                                    OutlineColor="{Binding FrameBackground}"
                                    Padding="0,0,0,0">
Run Code Online (Sandbox Code Playgroud)

框架根据ListView中选择的项目更新颜色.现在,如果我使用标准框架,它可以完美地运行.但我使用带圆角的自定义框架,我在Android中遇到此错误.

Java.Lang.NullPointerException:尝试在空对象引用上调用虚方法'boolean android.graphics.Bitmap.isMutable()'

任何帮助表示赞赏.

android mvvm xamarin.android xamarin.forms

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

将依赖项注入到验证属性Web Api Asp.Net Core中

我正在Asp.Net Core Web Api中构建自定义验证属性。我需要访问验证器中的IDataProtector和用于访问数据库的其他服务。我已经搜索过,并且没有找到有关此内容的任何文档。ActionFilters可以选择使用ServiceFilter,但是Validation Attribute似乎没有任何选择。有任何想法吗?

asp.net-mvc asp.net-web-api asp.net-core

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

服务器上的 HangFire 重复作业失败,并出现 Autofac.Core.Registration.ComponentNotRegisteredException 或无参数异常

我刚刚开始使用 HangFire。当我从 IIS Express 本地运行它时,这些作业似乎工作正常,但是当我在我的开发服务器上运行它时,我收到没有定义无参数构造函数的错误。我之前使用的是 Simple Injector,但现在我已经转向 Autofac。

 public class Startup
{

    public void Configuration(IAppBuilder app)
    {
        ConfigureAuth(app);
        ConfigureIoc(app);
        ConfigureRoutes();
        ConfigureHangfire(app);
        ScheduleXeroMonitor();
    }

    public void ConfigureHangfire(IAppBuilder app)
    {
        var authList = new List<IDashboardAuthorizationFilter>
        {
            new ClaimsBasedAuthorizationFilter("role", "admin")
        };
        var options = new DashboardOptions
        {
            Authorization = authList,
            AppPath = "/Manage"

        };

        app.UseHangfireDashboard("/hangfire", options);
        app.UseHangfireServer();
    }

    public void ConfigureRoutes()
    {
        BundleTable.EnableOptimizations = true;
        AreaRegistration.RegisterAllAreas();
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);
    }

    public void ConfigureIoc(IAppBuilder app)
    {
        var builder = DependencyRegistrar.RegisterClasses();
        var container = builder.Build(); …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc hangfire hangfire-autofac

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

在 Windows 上运行 git rm -r --cached

此命令似乎不适用于 Windows。当我输入命令时

git rm -r --cached. 
Run Code Online (Sandbox Code Playgroud)

这就是我得到的

usage: git rm [<options>] [--] <file>...

-n, --dry-run         dry run
-q, --quiet           do not list removed files
--cached              only remove from the index
-f, --force           override the up-to-date check
-r                    allow recursive removal
--ignore-unmatch      exit with a zero status even if nothing matched
Run Code Online (Sandbox Code Playgroud)

帮助??

windows git

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