話說:使用CYQ.Data時,會常常斷點MDataTable的對象,爲了查看錶格的數據內容,在監視裏會常ToDataTable(),而後借可DataTable的可視化方式查看錶格。ide
using Microsoft.VisualStudio.DebuggerVisualizers;
using System;
using System.Drawing;
using System.Windows.Forms;
[assembly: System.Diagnostics.DebuggerVisualizer(
typeof(CYQ.Visualizer.ImageVisualizer),
typeof(VisualizerObjectSource),
Target = typeof(System.Drawing.Image),
Description = "Image Visualizer")]
namespace CYQ.Visualizer
{
public class ImageVisualizer : DialogDebuggerVisualizer
{
override protected void Show(IDialogVisualizerService windowService, IVisualizerObjectProvider objectProvider)
{
Image image = (Image)objectProvider.GetObject();
Form form = new Form();
form.Text = string.Format("Width: {0}, Height: {1}", image.Width, image.Height);
form.ClientSize = new Size(image.Width, image.Height);
form.FormBorderStyle = FormBorderStyle.FixedToolWindow;
PictureBox pictureBox = new PictureBox();
pictureBox.Image = image;
pictureBox.Parent = form;
pictureBox.Dock = DockStyle.Fill;
windowService.ShowDialog(form);
}
}
}
一句話,把那個Xxx.dll放到如下目錄:VS安裝目錄\Microsoft Visual Studio XXX\Common7\Packages\Debugger\Visualizers調試
對於不一樣的VS(200五、200八、20十二、2015),你須要編繹不一樣的版本,主要是引用的:Microsoft.VisualStudio.DebuggerVisualizers 這個版本不同。orm