-3
IEnumerable<string> peopleWithInvalidAge =
                    (from age in User
                     where age < 0
                     select name ).Distinct();

MessageBox.show("The people who have invalid age are {0}" , string.Join(", ", peopleWithInvalidAge) )

これにより、出力が string として表示されます。しかし、私が望むのは、出力を表形式で表示することです。MessageBox.show が呼び出されたときの名前と年齢。

メッセージ ボックス内を強調表示できれば、それも素晴らしいことです

助けてください。

4

3 に答える 3

1

WPFでは、ウィンドウを作成する必要があります

Xaml

<my:Datagrid x:Name="test" xmlns:my="http://schemas.microsoft.com/wpf/2008/toolkit" CanUserAddRows="True" ItemsSource="{Binding}" AutoGenerateColumns="False">  
    <my.DataGrid.Columns> 
        <my:DataGridTextColumn Header="Your Collection" Binding="{Binding}"/>  
    </my.DataGrid.Columns> 
</my:Datagrid> 

CodeBehind

public Window()  
{  
    InitializeComponent();  

    test.DataContext = peopleWithInvalidAge ;  
}
于 2012-10-09T17:29:00.900 に答える
1

そのためにウィンドウを使用し、showdialgを使用して、必要に応じてボタンとデータグリッドを使用し(メッセージボックスのようにします)、ダイアログの結果を操作できます。

それをするための単なるアイデア

于 2012-10-09T17:32:18.060 に答える
1

これはWPF用です

書式設定には Window を使用できます。
ctor で IEnumerable を渡すことができます。
Window.ShowDialog はモーダルです。

Window.ShowDialog メソッド

Window1 win = new Window1(new List<string> { "john", "susan" });
win.ShowDialog();

public Window1(IEnumerable<string> names)
{
    Names = names;
    InitializeComponent();
}
public IEnumerable<string> Names { get; private set; }

<Window x:Class="ListViewUpdate.Window1"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        DataContext="{Binding RelativeSource={RelativeSource self}}"
        Title="Window1" Height="300" Width="300">
<Grid>
    <ListView ItemsSource="{Binding Path=Names}" />
</Grid>
</Window>

司会者 質問する部分は 3 つあります。
モーダル、データの受け渡し、および書式設定。
もう1つの答えは、モーダルまたはウィンドウへのデータの受け渡しには対応していません。
パスとフォーマットのサンプルを作成しているときに投稿しました。

于 2012-10-09T17:58:52.317 に答える