1

データグリッドにデータが入力されているwpfで何かをしています。データグリッドの各行について、マウスをポイントすると、画像を含むツールチップが表示される必要があります。そして、この画像はデータグリッドの行ごとに異なります。どうすればいいですか。私はこれを行うことができました:

Image img = new Image();
        BitmapImage bmp = new BitmapImage();
        bmp.BeginInit();
        bmp.UriSource = new Uri(Directory.GetCurrentDirectory()+ "\\Kartik.JPG");
        bmp.DecodePixelHeight=200;
        bmp.DecodePixelWidth=200;
        bmp.EndInit();
        img.Source=bmp;
        ToolTipService.SetPlacement(dgAssortment, System.Windows.Controls.Primitives.PlacementMode.Center);
        ToolTipService.SetToolTip(dgAssortment, img);
        ToolTipService.SetShowDuration(dgAssortment, 99999999);

しかし、これは、マウスポインターをどの行に置いているかに関係なく、データグリッド全体で同じ画像を示しています。データグリッドに入力された行ごとにこの画像を異なるものにするにはどうすればよいですか? 助けてください。前もって感謝します。

4

1 に答える 1

0

データグリッド全体のツールチップを設定しているようです:

ToolTipService.SetPlacement(dgAssortment,(dgAssortment がデータグリッドであると想定しています)。

手動でループするか、データバインディングが発生したときに発生するイベントにフックすることにより、行ごとにこれを行う必要があります。VS 2010 Beta 2 では、WPF DataGrid に、使用できる LoadingRow イベントがあります。

于 2009-11-27T18:46:35.203 に答える