3

編集 :

コード パックのソースを修正し、更新された NuGet パッケージをアップロードしました。

https://www.nuget.org/packages/WindowsAPICodePack-Shell/

バグ修正のための dmexに感謝します: http://archive.msdn.microsoft.com/WindowsAPICodePack/WorkItem/View.aspx?WorkItemId=108

ご覧のとおり、問題は修正されており、Openedイベントの面倒な構文を使用する必要はありません。

ここに画像の説明を入力


アイコンを指定するとき、ダイアログの高さが正しくありません。最後のコマンド リンクが完全に表示されていません:

ここに画像の説明を入力

この問題を解決する方法についてのアイデアはありますか?

このダイアログを表示するために使用されるコード:

var dialog = new TaskDialog
{
    Caption = Title,
    InstructionText = "Some files added are already in the collection.",
    Text = "They have been skipped."
};
dialog.Opened += (s1, e1) => { dialog.Icon = TaskDialogStandardIcon.Warning; };

var linkContinue = new TaskDialogCommandLink("Continue", "Continue", string.Empty);
linkContinue.Click += (s2, e2) =>
{
    var s = (TaskDialogCommandLink)s2;
    var taskDialog = (TaskDialog)(s.HostingDialog);
    taskDialog.Close();
};
dialog.Controls.Add(linkContinue);

var linkView = new TaskDialogCommandLink("View", "View these files", string.Empty);
linkView.Click += (s3, e3) =>
{
    var s = (TaskDialogCommandLink)s3;
    var taskDialog = (TaskDialog)(s.HostingDialog);
    taskDialog.Close();
    var window1 = new Window1 { Text = files, Title = Title };
    window1.ShowDialog();
};
dialog.Controls.Add(linkView);

dialog.Show();
4

1 に答える 1

5

もう一度.Opendに「InstructionText」を割り当ててみてください(1.1.0.0でも問題が修正されているようです)。

        var dialog = new TaskDialog
        {
            Caption = Title,
            InstructionText = "Some files added are already in the collection.",
            Text = "They have been skipped."
        };

        dialog.Opened += (s1, e1) =>
        {
            dialog.Icon = TaskDialogStandardIcon.Warning;
            dialog.InstructionText = dialog.InstructionText; // < seems to work
        };
于 2014-01-19T14:34:45.233 に答える