小编Ωme*_*Man的帖子

WPF更改网格和网格边框不透明度而不影响子项

我有一个网格,我想使不透明度为0.5.我也有这个网格的边界,以使圆角走投无路,我想这条边界也有不透明度0.5.我想要所有这些而不影响网格的内容.我成功地改变了网格的不透明度而没有影响内容:

        <Grid  Grid.Column="0"  Grid.Row="0" Margin="10,15,5,5" >
        <Border BorderThickness="7" CornerRadius="4" >
            <Grid>
                <Grid.Background>
                    <SolidColorBrush Color="#73B2F5" Opacity="0.5"/>
                </Grid.Background>
                <Grid.RowDefinitions>
                    <RowDefinition Height="30"/>
                    <RowDefinition Height="1*"/>
                </Grid.RowDefinitions>
                <Button Grid.Row="1" Grid.Column="0" Width="40" Height="40" Content="Asaf"></Button>

            </Grid>
        </Border>
    </Grid>
Run Code Online (Sandbox Code Playgroud)

在上面的示例中,按钮具有完全不透明度,而网格为0.5,但边框呢?如何让我的边境有0.5混浊不影响里面的网格,网格内容(所有边框孩子)?

我试过这个,但它不起作用:

        <Grid  Grid.Column="0"  Grid.Row="0" Margin="10,15,5,5" >
        <Border BorderThickness="7" CornerRadius="4">
            <Border.Background>
                <SolidColorBrush Color="#73B2F5" Opacity="0.5"/>
            </Border.Background>
            <Grid>
                <Grid.Background>
                    <SolidColorBrush Color="#73B2F5" Opacity="0.5"/>
                </Grid.Background>
                <Grid.RowDefinitions>
                    <RowDefinition Height="30"/>
                    <RowDefinition Height="1*"/>
                </Grid.RowDefinitions>
                <Button Grid.Row="1" Grid.Column="0" Width="40" Height="40" Content="Asaf"></Button>

            </Grid>
        </Border>
    </Grid>
Run Code Online (Sandbox Code Playgroud)

wpf grid border opacity

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

识别无效的Azure容器名称

如何根据规则以编程方式确定容器名称是否无效?


Azure Blob存储中Container的有效命名.

  1. 3到63个字符
  2. 以字母或数字开头
  3. 字母,数字和短划线( - )
  4. 每个短划线( - )必须立即在前面跟随一个字母或数字
  5. 容器名称中的所有字母必须为小写.

azure azure-storage

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

具有实时整形/分组的WPF ListBox - 如何在重新组合项目时保持选择?

我有一个ObservableCollection在我的视图模型中,CollectionViewSource并且ListBox在我看来.

ListBox绑定到CollectionViewSource.在CollectionViewSource绑定到ObservableCollection,整理物品,并安排他们到组.我通过IsLiveGroupingRequestedIsLiveSortingRequested上的属性启用了实时排序和实时分组CollectionViewSource,因此每当底层视图模型对象发生更改时,它们都会重新排序并重新分组ListBox.一切正常.

问题与选择有关.如果我在中选择了一个项目,ListBox然后由于视图模型对象以某种方式更改而重新分组,则在将项目移动到新组时将取消选择该项目.

如何重新分组所选项目时如何保留选择?

这是一个简单的修剪XAML示例,显示了问题.如果AllItems中某个对象的Category属性发生更改,则由于实时整形,该项目将正确重新分组.但是,如果选择了该项目,它将被取消选中.

<Grid>

    <Grid.Resources>
        <CollectionViewSource x:Key="MyItems" Source="{Binding AllItems}" IsLiveGroupingRequested="True" IsLiveSortingRequested="True">
            <CollectionViewSource.SortDescriptions>
                <componentModel:SortDescription PropertyName="Category" />
                <componentModel:SortDescription PropertyName="Name" />
            </CollectionViewSource.SortDescriptions>
            <CollectionViewSource.GroupDescriptions>
                <PropertyGroupDescription PropertyName="Category" />
            </CollectionViewSource.GroupDescriptions>
        </CollectionViewSource>
    </Grid.Resources>

    <ListBox ItemsSource="{Binding Source={StaticResource MyItems}}">
        <ListBox.GroupStyle>
            <GroupStyle>
                <GroupStyle.HeaderTemplate>
                        <DataTemplate>
                                <TextBlock Text="{Binding Name}" />
                        </DataTemplate>
                </GroupStyle.HeaderTemplate>
            </GroupStyle>
        </ListBox.GroupStyle>
    </ListBox>

</Grid>
Run Code Online (Sandbox Code Playgroud)

我在互联网上搜索了解决方案,但根本找不到任何东西.我找到了这个帖子,但没有发布解决方案.

我正在试着让我的头发工作.我非常感谢任何帮助!

.net c# wpf wpf-4.5

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

如何在Visual Studio 2013中允许父路径?

我正在将一个经典的ASP站点转换为Visual Studio 2013 MVC项目.当我在Visual Studio 2013调试器中运行经典ASP代码时,我收到一条错误消息:

Active Server Pages错误'ASP 0131'不允许父路径

问题是:如何在VS2013调试器中启用父路径?

仅供参考 - 这不是IISExpress,并且启用父路径是不同的.

asp.net asp-classic visual-studio-2013

7
推荐指数
2
解决办法
3681
查看次数

使用EF在MVC应用程序中发生System.Data.Entity.Core.EntityCommandExecutionException

我即将创建一个以UUID作为其唯一密钥(不是主键)的应用程序表单.

我收到了错误:

EntityFramework.SqlServer.dll中出现"System.Data.Entity.Core.EntityCommandExecutionException"类型的异常但未在用户代码中处理附加信息:执行命令定义时发生错误.有关详细信息,请参阅内部异常

连接字符串到DB:

 connectionString="Data Source=(localdb)\v11.0; 
                   Initial Catalog=FormsContext; 
                   Integrated Security=True; 
                   MultipleActiveResultSets=True;
                   AttachDbFilename=|DataDirectory|Forms.mdf"
 providerName="System.Data.SqlClient"
Run Code Online (Sandbox Code Playgroud)

FormsContext.cs:

namespace ApplicationForm.Models
{
    public class FormsContext : DbContext
    {
        public FormsContext() : base("name=FormsContext")
        {
        }

        public System.Data.Entity.DbSet<ApplicationForm.Models.Form> Forms { get; set; }
...
Run Code Online (Sandbox Code Playgroud)

数据库是这样的:

 FormsContext->Forms->{id,uuid,first,last...}
Run Code Online (Sandbox Code Playgroud)

我不太确定这次发生了什么.有人帮我解决这个问题吗?

编辑/分辨率

我不确定如何检查内部异常,我对此做了一些研究.因此,当我在内部异常中阅读错误消息时,我可以解决我的问题.

我发现了这个bug是什么.查询字段是'firstname'但我的表列名是'first'.他们没有匹配.一旦我更改了DB列名称,它就再次运行了.

c# entity-framework

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

Windows -1252不支持编码名称.C#

我正在使用Windows 10 Universal App和ARM CPU为Raspberry Pi创建应用程序.编码时出现以下错误:

附加信息:'windows-1252'不是受支持的编码名称.有关定义自定义编码的信息,请参阅Encoding.RegisterProvider方法的文档.

这是我的代码.

 private async void Login(string passcode)
    {
        try
        {
            MySqlConnection conn = new MySqlConnection("Server=...");
            MySqlCommand cmd;

            conn.Open();

            cmd = new MySqlCommand("Select * from ...");

            var dr = cmd.ExecuteReader();

            int count = 0;

            while (dr.Read())
                count += 1;

            var dialog = new MessageDialog((count == 1) ? "Logged In" : "Error");
            await dialog.ShowAsync();

        }
        catch (Exception ex)
        {
           var dialog = new MessageDialog(ex.Message);
           await dialog.ShowAsync();
        }
        finally { conn.Close(); }
    }
}
Run Code Online (Sandbox Code Playgroud)

我在这行代码中得到了错误

dr = …
Run Code Online (Sandbox Code Playgroud)

c# mysql encoding arm windows-1252

7
推荐指数
2
解决办法
5720
查看次数

重复按钮敲击

我有一个控件,允许用户在图像的特定部分执行一些重型图像处理,并且他们有箭头按钮在图像周围移动这个区域.

因为这个过程是非常繁重的(每次运行平均800毫秒)我使用了一个重复按钮,将其转换为"Ghost"并且仅在鼠标按下事件时执行该过程.

这非常有效并且解决了与此功能相关的大多数性能问题

然而

某些用户拒绝学习这种握持和释放的方法,并坚持点击按钮移动它而不是握住和释放.

这意味着每次敲击时都会调用重载方法,因为每次方法触发时它只会移动一个小的增量,所以当它尝试执行> 800这些800ms +进程时它们最终会挂起应用程序

我的问题

如何以与保持和释放相同的方式处理此敲击行为?

我想过一个计时器,但无法弄清楚我如何检测正常点击和最后一个点击之间的区别.

c# wpf visual-studio-2015

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

不接受Azure功能(ILogger或TraceWriter)的上次日志记录参数

将我自己的项目从早期(几个月前)版本的Azure功能升级到当前版本后,从VS启动时出现以下错误.

GetLoginUrl:Microsoft.Azure.WebJobs.Host:错误索引方法'Login.GetLoginUrl'.Microsoft.Azure.WebJobs.Host:无法将参数'log'绑定到类型ILogger.确保绑定支持参数Type.如果您正在使用绑定扩展(例如ServiceBus,Timers等),请确保您已在启动代码中调用扩展的注册方法(例如config.UseServiceBus(),config.UseTimers()等).

之前,我曾经把TraceWriter log我的方法作为最后一个参数,但后来我发现我应该使用它ILogger.在我做出改变之前,我得到了与上面相同的错误.

ILogger似乎被映射到组装Microsoft.Extensions.Logging.Abstractions.也许这就是为什么它不被认可?哪个ILogger应该用?这是方法签名.

[FunctionName("GetLoginUrl")]
public static HttpResponseMessage GetLoginUrl(
    [HttpTrigger(AuthorizationLevel.Anonymous, "get", Route = null)]HttpRequestMessage req,
    ILogger log)
Run Code Online (Sandbox Code Playgroud)

我没有尝试将其部署到Azure.

不幸的是,创建一个全新的函数项目并没有帮助,因为没有.CS文件可以查找以纠正这个问题.

c# azure azure-webjobs azure-functions

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

如何将“AzureAd”详细信息显式传递给 AddMicrosoftIdentityWebApi 方法以进行令牌验证

我正在使用Microsoft.Identity.Web库来验证 .Net Core Web API 中的令牌。

public void ConfigureServices(IServiceCollection services)
{
        ------------

    services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme)
            .AddMicrosoftIdentityWebApi(Configuration);

        ------------
}
Run Code Online (Sandbox Code Playgroud)

但根据此处的文档,我需要通过 IConfiguration 实例将AzureAd(一个包含tenantId、ClientId、Domain、Instance 等的对象)对象传递给AddMicrosoftIdentityWebApi方法。截至目前,此方法尝试从本地 appsettings.json 文件加载此对象。我想将这些详细信息显式传递给该方法,AddMicrosoftIdentityWebApi因为我们没有在本地 appsettings.json 文件中存储任何键值(所有键值均来自 Consul 和 Vault)。

我尝试覆盖配置对象但无法做到。

如何将此 AzureAd 对象传递给AddMicrosoftIdentityWebApi方法,以便它可以验证令牌以及缺少什么?

更新:嘿..我设法显式传递这些值。

Action<JwtBearerOptions> configureJwtBearerOptions = Test1;
static void Test1(JwtBearerOptions t1)
{
    t1.Audience = $"{appSettings.adCredentials.Instance}/{appSettings.adCredentials.TenantId}";
    t1.TokenValidationParameters.ValidAudiences = new string[] {
        appSettings.adCredentials.ClientId,
        $"api://{appSettings.adCredentials.ClientId}"
    };
}

Action<MicrosoftIdentityOptions> configureMicrosoftIdentityOptions = Test2;
static void Test2(MicrosoftIdentityOptions t2)
{
    t2.TenantId = appSettings.adCredentials.TenantId;
    t2.ClientId = …
Run Code Online (Sandbox Code Playgroud)

c# access-token asp.net-identity asp.net-core microsoft-identity-platform

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

Microsoft.AspNetCore.Components.Forms.InputDate 需要 EditContext 类型的级联参数

我正在开发一个ASP.NET 5.0 blazor web assembly应用程序。我需要在仪表板屏幕中有一个日期选择器来选择一个日期来显示详细信息。

这是我的代码:

<input class="input" type="month" id="staffPicker" name="staffPicker"
        aria-label="Staff Sales Detail Period"
        @bind="StaffSaleDetailsPeriod"
        max="@DateTime.Now.ToString("yyyy-MM")">
Run Code Online (Sandbox Code Playgroud)

我需要在日期更改时触发 API 调用。所以我尝试添加@onchange到上面的代码中,如下所示。

<input class="input" type="month" id="staffPicker" name="staffPicker"
        aria-label="Staff Sales Detail Period"
        @bind="StaffSaleDetailsPeriod"
        max="@DateTime.Now.ToString("yyyy-MM")"
        @onchange="OnStaffSalePeriodChange">
Run Code Online (Sandbox Code Playgroud)

但这会产生新的错误,如下所示:

该元素使用属性“onchange”两次或多次。属性必须是唯一的(不区分大小写)。属性“onchange”由“@bind”指令属性使用。

所以我尝试将上面的input元素替换<InputDate>为如下所示,

<InputDate class="input is-small"
        ValueExpression="() => StaffSaleDetailsPeriod"
        Value="StaffSaleDetailsPeriod"
        ValueChanged="(DateTime staffSalesPeriod) => OnStaffSalePeriodChange()"
        max="@DateTime.Now.ToString("yyyy-MM")"/>
Run Code Online (Sandbox Code Playgroud)

这会产生运行时错误,如下所示:

EditForm 内的Microsoft.AspNetCore.Components.Forms.InputDate 1[System.DateTime] requires a cascading parameter of type EditContext. For example, you can use Microsoft.AspNetCore.Components.Forms.InputDate1[[System.DateTime, System.Private.CoreLib, Version=5.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]

缺少什么或者这<InputDate>不能与 …

asp.net-core asp.net5 blazor blazor-webassembly

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