我有一些圖像存儲在MySQL InnoDB數據庫中的Blob
類型字段中,以及與存儲在其他字段中的圖像有關的其他信息。從MySQL Blob字段中呈現BandedGridColumn中的圖像
正如你所知,在DevExpress 11.2版中分發的Banded Grid View在Banded Grid Columns的幫助下,能夠呈現多種類型的數據,最顯着的是圖像。
到目前爲止,我能夠創建的每一個控制和加載任何所需的數據,包括圖片,採用了常見的MySqlDataReader
和DataSet
方法,通過Grid ControlDataSource
財產,擁有該BandedGridView
。
但是,正如你所知道的那樣,當你從MySQL加載Blob字段時,你將返回一個帶有文件內容的字節數組,這裏是所討論的圖像。
我希望DevExpress能夠識別二進制數據,並意識到它是一個圖像文件,並自動渲染圖像列下的所有行分配處理數據庫Image
字段,但它沒有,現在我認爲它可能是很遙遠的希望。
而不是渲染圖像,該列的每一行顯示一個簡單的字符串輸出引用該字段包含的對象的類型。在這種情況下,由於它是一個文件的二進制表示,它輸出System.Byte[]
。
我已經搜索了DevExpress文檔,並且通常在網絡上找不到可以解決我的問題的任何明確信息。在WinForms - > XtraGrid部分的下方,有一個我期望的結果與DevExpress一起打包,一個名爲「GridMainDemo」的解決方案。一旦運行演示,切換到備用視圖並進入帶狀網格視圖,然後只需點擊圖片欄下的任意一行,就可以看到我想要的結果的清晰示例。
當然,我已經看過該演示的源代碼,但我不能說澄清和解釋是構建此類演示的DevExpress團隊的明確目標,而且很遺憾,我沒有太多時間來看待它深深地。然而從我看到的這個演示不同於圖像本地存儲爲文件這一點,並且已經在某種存儲庫中正確引用,這對我的問題沒有多大幫助。
爲了完成我的問題,對於長時間的閱讀感到抱歉,只是想清楚地知道我的目標是什麼,阻礙什麼,以及如何設置所有的東西以便找到達到我的目標的方法。
簡而言之,一個簡單的例子就是如何將圖像從MySQL Blob字段加載到Banded Grid View中的列中,並在加載後或者當用戶單擊字段單元格時呈現它,這將是理想的,並且能夠理解並且做必要的代碼,以便我的視圖也呈現我的圖像。
我非常感謝,真的。
注意:不幸的是,使用本地甚至遠程存儲的文件不是 的一個選項。圖像必須保存在數據庫的限制範圍內。