小编Mar*_*man的帖子

Repeater中的按钮不会触发ItemCommand

为什么Repeater中的按钮不会触发Repeater的ItemCommand事件?有没有办法强迫它这样做?ViewState已启用.

在下面的代码中,btnApprove和btnDelete是有问题的按钮:

<asp:Repeater runat="server" ID="rpt1" onitemdatabound="rpt1_ItemDataBound" onitemcommand="rpt1_ItemCommand" >
    <ItemTemplate>
        <table width="100%" style="margin-bottom:6px;">
            <tr>
                <td>
                    <asp:CheckBox ID="chkSelected" runat="server" Text=" " TextAlign="Right"/> Select
                    <asp:Button ID="btnApprove" runat="server" Width="80px" Text="Approve" />
                    <asp:Button ID="btnDelete" runat="server" Width="80px" Text="Delete" />
                </td>                                                                   
            </tr>
            <tr>
                <td align="right">
                    <asp:Label ID="lblCommentStatus" runat="server" Text="Label"></asp:Label>
                </td>
            </tr>
        </table>
        <table width="100%" style="margin-top:6px;">
            <tr>
                <td><asp:Label ID="lblAuthorName" runat="server" Text="Author: " Width="60px"></asp:Label></td>
                <td><asp:TextBox ID="txtAuthorName" runat="server" Width="250px"></asp:TextBox></td>
                <td style="padding-left: 30px;"><asp:Label ID="lblAuthorLocation" runat="server" Text="Location: " Width="70px"></asp:Label></td>
                <td><asp:TextBox ID="txtAuthorLocation" runat="server" Width="250px"></asp:TextBox></td>
            </tr>
        </table>
        Title: <asp:TextBox ID="txtTitle" runat="server" Width="640px" Enabled="False"></asp:TextBox>
        Body: …
Run Code Online (Sandbox Code Playgroud)

c# asp.net repeater button itemcommand

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

WPF以编程方式禁用启动画面

我有一个WPF应用程序,可选择接受命令行参数.其中一个参数指定"静音模式"(无UI).如何根据此参数在启动时禁用启动画面的显示?

wpf splash-screen

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

WPF DependencyProperty抛出InvalidOperationException

我正在尝试设置一个由WCF回调线程更新的依赖项属性.
MainWindow.xaml上有一个绑定到此属性的ProgressBar:

MainWindow.xaml

<ProgressBar Name="ProgressBar" Value="{Binding Progress, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}" />
Run Code Online (Sandbox Code Playgroud)

MainWindow有一个DemoModule实例,定义如下:

DemoModule.xaml.cs

/// <summary>
///     Interaction logic for DemoModule.xaml
/// </summary>
public partial class DemoModule : UserControl, INotifyPropertyChanged
{
    public static readonly DependencyProperty ProgressProperty = DependencyProperty.Register("Progress", typeof(int), typeof(DemoModule));        
    public event ProgressEventHandler ProgressChanged;
    public event PropertyChangedEventHandler PropertyChanged;

    public int Progress
    {
        get { return (int)GetValue(ProgressProperty); }
        set { SetValue(ProgressProperty, value); }  // setter throws InvalidOperationException "The calling thread cannot access this object because a different thread owns it"
    }

    /// <summary> …
Run Code Online (Sandbox Code Playgroud)

c# wpf wcf wpf-controls wpf-4.0

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

git push - 没有pull refs的镜像

我正在将一个git repo迁移到另一个.要做到这一点,我正在使用--mirror标志clonepush操作.

这有效,除了最后的失败,导致我的bash脚本失败,这看起来是孤立的拉取请求:

! [remote rejected] refs/pull/1/head -> refs/pull/1/head (The current action can only be performed by the system.) ! [remote rejected] refs/pull/1/merge -> refs/pull/1/merge (The current action can only be performed by the system.) ! [remote rejected] refs/pull/2/head -> refs/pull/2/head (The current action can only be performed by the system.) ! [remote rejected] refs/pull/3/head -> refs/pull/3/head (The current action can only be performed by the system.)

是否有必要迁移拉取请求?

我什么时候可以省略拉取请求git push --mirror

我已经看到了修改配置文件的参考,但我更愿意在CLI处理它,如果可能的话.

git bash github

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

如何通过 CloudFormation 禁用 Cognito 用户注册?

如何通过 AWS::Cognito::UserPool 资源上的 CloudFormation 或通过其他方法选择“仅允许管理员创建用户”值?

aws-cloudformation amazon-cognito

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

.NET中的SHA1CryptoServiceProvider与UNIX shasum不匹配

我正在尝试在ASP.NET应用程序和另一个基于UNIX的应用程序之间共享身份验证,其中散列密码存储在数据库中.我需要确保两个平台上的哈希算法匹配.

这是我在C#中散列的方式:

var sha1 = new SHA1CryptoServiceProvider();
var passwordBytes = Encoding.UTF8.GetBytes(password);
var passwordHash = sha1.ComputeHash(passwordBytes);
var base64 = Convert.ToBase64String(passwordHash);
return base64;

如果我使用密码,p@ssw0rd那么散列是该散列57B2AD99044D337197C0C39FD3823568FF81E48A的base64 V7KtmQRNM3GXwMOf04I1aP+B5Io=.base64哈希是存储在db中的内容.

如果我在UNIX上做同样的事情,我得到一个完全不同的哈希:

echo p@ssw0rd | iconv -f ISO-8859-1 -t UTF-8 | shasum -a 1 | base64 -e 产生 ZTU3NmQwNmUzMTAwNmRkNzFhNTFjZTg5ZjViMGI4NWM2NTMyNzg3OCAgLQo=

如果您使用OpenSSL进行尝试,请使用此方法echo "p@ssw0rd" |  openssl dgst -sha1 | openssl enc -base64,您将获得相同的哈希值.

导致不同哈希计算的两个SHA1算法有什么不同?我也不腌这些.

UPDATE

秘诀如下: echo -n "p@ssw0rd" | openssl dgst -sha1 -binary | openssl enc -base64

echo -n剥离换行符,-binary是必不可少的.

希望这可以帮助别人.

谢谢,马克

c# encryption cryptography sha1

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

等待从任务列表中触发的事件

我开始使用几个任务Task.Run().在每个任务中,我为其定义了一个事件处理程序InstallCompleted.然后,我await完成这些任务.棘手的是,installModule.Install()下面看到的方法立即返回,因为它在内部调用OneWayWCF服务调用.

那么,在上述每项任务中的await所有实例installModule都触发了各自的InstallCompleted事件之前,我该怎么做?如果有更好的方法来实现这一目标,我会全力以赴.

var installTasks = new List<Task>();

foreach (var targetMachine in vm.TargetMachines)
{
    var installTask = Task.Run(() =>
    {
        foreach (var module in Modules)
        {
            var installModule = module as IInstallModule;  // copy closure variable
            if (installModule == null)
                continue;

            installModule.InstallCompleted += (s, e) =>
            {
                //TODO set some flag indicating this install is complete
            };

            var ip = new Progress<InstallProgress>();
            installModule.Install(targetMachine.MachineName, ip);
        } …
Run Code Online (Sandbox Code Playgroud)

c# wcf asynchronous async-await

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

MahApps.Metro字体渲染很糟糕 - 我做错了什么?

我已经使用MahApps.Metro几周了,我无法弄清楚为什么字体看起来如此可怕.我只是使用Segoe UI和Segoe UI Semilight.

在此输入图像描述

wpf mahapps.metro

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

如何删除 ListView 行的悬停样式?

我正在使用Modern UI,并且我有一个包含 Gridview 的 ListView 。当我将鼠标悬停在一行上或选择一行时,该行会应用背景颜色。我怎样才能删除这个样式?

<ListView ... >
    <ListView.Resources>
        <SolidColorBrush x:Key="ItemBackgroundHover" Color="Transparent" />
        <Style TargetType="ListViewItem">
            <Style.Triggers>
                <Trigger Property="Validation.HasError" Value="True">
                    <Setter Property="Background" Value="Red" />
                </Trigger>
            </Style.Triggers>
        </Style>
    </ListView.Resources>
    <ListView.View>
        <GridView>
            <GridViewColumn Header="Action">
                <GridViewColumn.CellTemplate>
                    <DataTemplate>
                    ...
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

wpf modern-ui

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

C# 将序列号应用于分组项目

我正在尝试对一组对象进行分组,按名称排序,但我还想在每个组中设置一个连续的 InstanceID 属性,以便我具有以下内容:

Name="A", InstanceID=0
Name="A", InstanceID=1
Name="A", InstanceID=2
Name="B", InstanceID=0
Name="C", InstanceID=0
Name="C", InstanceID=1
Name="C", InstanceID=2
Name="D", InstanceID=0
Name="D", InstanceID=1
Name="D", InstanceID=2
Name="D", InstanceID=3
Run Code Online (Sandbox Code Playgroud)

等等。

我假设有后通过LINQ应用于一些投影GroupBy,但我不知道如何内用蓄电池或索引SelectSelectMany

我不想创建新集合,而只想修改现有集合,InstanceID对每个元素进行设置。

c# linq

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

string.Contains()和IndexOf()抛出FormatException

为什么会myString.Contains(" ")myString.IndexOf(' ')抛出出现FormatException"无效的名称格式"?仅当有空格时才抛出此异常myString.

c# string

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

LINQ将IEnumerable <string>转换为List <ulong>

我有以下代码:

var personIds = from player in myPlayers select player.person_id;

这里personIds是一个IEnumerable<string>,我想转换为List<ulong>,因为person_id是通过可转换Convert.ToUInt64()

这很容易在LINQ中完成吗?

c# linq ienumerable list

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