Tag: 渲染

在C#中渲染图形

还有另一种方法可以在C#中渲染图形超出GDI +和XNA吗? (用于开发tile map编辑器。)

如何加快垂直滚动条标记的渲染速度

我有一个自定义的垂直滚动条,显示DataGrid中所选项目的标记。 我面临的问题是,当存在大量项目(例如可能是5000到50000)时,在渲染标记时存在滞后。 使用以下代码,它基本上按照所选项目索引,项目数和轨道高度进行渲染。 显然这是低效的,我正在寻找其他解决方案。 这是我自定义的垂直滚动条 这是我的转换器,如果DataGrid高度发生变化,它会转换Y位置并相应地缩放。 public class MarkerPositionConverter: IMultiValueConverter { //Performs the index to translate conversion public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture) { try { //calculated the transform values based on the following object o = (object)values[0]; DataGrid dg = (DataGrid)values[1]; double itemIndex = dg.Items.IndexOf(o); double trackHeight = (double)values[2]; int […]

如何在ASP.NET MVC 4 Razor项目中显示集合?

我有以下型号: public class ContractPlain { public int Id { get; set; } public Guid ContractGuid { get; set; } public int SenderId { get; set; } public int RecvId { get; set; } public int ContractType { get; set; } public string ContractStatus { get; set; } public DateTime CreatedTime { get; set; } public […]

可以将DirectX表面绘制到WPF控件吗?

DirectX可用于绘制WPF控件上的一组点(或WPF可以使用的东西)。 我需要在WPF中实现一个控件,该控件应该以30 Hz的更新率绘制16k点,现在我的解决方案已经用完了。 这个想法来自这个问题的评论。 任何帮助将非常感激。

在视图中执行处理程序的子请求时出错

我有一个MVC 4视图,我在其中呈现以下操作 @{ Html.RenderAction(“Index”, “Logo”); Html.RenderAction(“Index”, “MainMenu”); } 我在我的视图上有一个表格,填写并发布到控制器。 在控制器中,我执行一些任务,然后将模型发送回我的视图 [HttpPost] public ActionResult Index(ManageAdministratorModel manageAdministratorModel) { // I save some of the fields to the database here. return View(manageAdministratorModel); } 当我被重定向到视图时,我收到以下错误 执行处理程序’System.Web.Mvc.HttpHandlerUtil + ServerExecuteHttpHandlerAsyncWrapper’的子请求时出错。 在这条线上 Html.RenderAction(“Index”, “Logo”); 知道为什么会这样吗?

从多个线程渲染到单个Bitmap对象

我正在做的是将多个位图呈现给单个位图。 可能有数百个图像,并且渲染的位图可能超过1000×1000像素。 我希望通过使用多个线程来加快这个过程,但由于Bitmap对象不是线程安全的,因此它不能直接同时呈现。 我想的是将大位图分成每个cpu的部分,分别渲染它们然后在最后将它们连接在一起。 我还没有这样做,但是你们/女孩们有更好的建议。 有任何想法吗? 谢谢

为什么我的坐标(1,1)从(0,1)开始?

我重写了边框控件,在我的重写OnRender中我做了: protected override void OnRender(System.Windows.Media.DrawingContext dc) { this.SnapsToDevicePixels = true; this.VisualEdgeMode = EdgeMode.Aliased; var myPen = new Pen(new SolidColorBrush(Colors.LightGray), 1); dc.DrawLine(myPen, new Point(1, 1), new Point(1, RenderSize.Height – 1)); return; 哪个给我这个结果: 题: 是否有人可以告诉我为什么我的代码从(0,1)开始绘制一条线,而假设从(1,1)开始就像用代码编写的那样? 我的DPI是96,96。 对于ref,这是我的xaml:

将控制绘制到内存(位图)

是否可以在不绘制屏幕的情况下将wpf控件绘制到内存(Bitmap)? 我找到了一个如何保存到Bitmap的示例,但它仅在窗口中绘制窗口时才有效。 BitmapImage bitmap = new BitmapImage(); RenderTargetBitmap renderTarget = new RenderTargetBitmap((int)canvaspad.Width, (int)canvaspad.Height, 96, 96, System.Windows.Media.PixelFormats.Default); renderTarget.Render(canvaspad);

自定义绘制控件的可怕性能

我在wpf进行简单的图形控制。 我无法解释或解决性能问题:与winforms相比,它太慢了。 也许我做错了什么。 我准备演示来演示这个问题。 这是测试控制: public class Graph : FrameworkElement { private Point _mouse; private Point _offset = new Point(500, 500); public Graph() { Loaded += Graph_Loaded; } private void Graph_Loaded(object sender, RoutedEventArgs e) { // use parent container with background to receive mouse events too var parent = VisualTreeHelper.GetParent(this) as FrameworkElement; if (parent != […]