VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 868|回复: 9

asp.net中的listbox里怎么加小图片?

[复制链接]

3

主题

9

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
发表于 2020-1-23 15:00:02 | 显示全部楼层 |阅读模式
能加图片吗?能的话,给点代码研究,谢谢!
回复

使用道具 举报

0

主题

322

帖子

115.00

积分

新手上路

Rank: 1

积分
115.00
发表于 2020-2-7 09:15:01 | 显示全部楼层
不能,
除非自己写个类型于listbox的控件.

用表格实现.
回复

使用道具 举报

0

主题

10

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-2-8 12:45:01 | 显示全部楼层
光靠一个控件不可能实现的。
这个要用div实现的!!
回复

使用道具 举报

3

主题

9

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
 楼主| 发表于 2020-2-9 19:00:01 | 显示全部楼层
这个功能也做不出来了,水平滚动也不行,没法交差了。。。
还是非常感谢楼上的大哥大姐!
回复

使用道具 举报

0

主题

15

帖子

10.00

积分

新手上路

Rank: 1

积分
10.00
发表于 2020-2-13 22:30:02 | 显示全部楼层
net_lover(【孟子E章】) 的方法是可行的
回复

使用道具 举报

3

主题

9

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
 楼主| 发表于 2020-8-8 13:15:01 | 显示全部楼层
Imports System.Web.UI.WebControls.Unit
Imports System.Data.SqlClient
Imports System.Data

Partial Class _Default
    Inherits System.Web.UI.Page

    Public DBCommon As CommonDBClass                    'DB接続オブジェクト通用変数

    Private Const blankWidth = 6
    Private Const plusPic = "<img src='./image/plus.gif' />"
    Private Const minusPic = "<img src='./image/minus.gif' />"

    Dim dsRole As DataSet

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load



        Me.DBCommon = New CommonDBClass

        Dim strSql As String = "Select * From Table_Role Where 1 = 1"
        dsRole = Me.DBCommon.ADONETGetDataSetfromSQL(strSql)

        Me.DBCommon.Dispose()


        initRootNew("PanelN", "TableN", "DisplayN", "ImageN", Me.mainTable, 0)


    End Sub

   

   
    Private Function getIsEnd(ByVal strParent As String) As Integer
        Dim arrResult As ArrayList

        getChild(strParent, arrResult)
        Return arrResult.Count
    End Function

    ' Add By ZhengJia On 2006/12/31
    Private Function getChildNew(ByVal intParent As Integer, ByRef arrResult As ArrayList) As Integer
        arrResult = New ArrayList
        Dim i As Integer
        Dim strTemp As String

        Dim drArray As DataRow()
        drArray = dsRole.Tables(0).Select("PARENT_ID = " + intParent.ToString)

        For i = 0 To drArray.Length - 1
            'strTemp = Trim(drArray(i)("NAME").ToString)
            'arrResult.Add(strTemp)
            arrResult.Add(drArray(i))
        Next

        Return 1

    End Function

    ' Add By ZhengJia On 2006/12/31
    Private Function getIsEndNew(ByVal intParent As Integer) As Integer
        Dim arrResult As ArrayList

        getChildNew(intParent, arrResult)
        Return arrResult.Count

    End Function
    ' Add By ZhengJia On 2006/12/31
    Private Function initRootNew(ByVal PanelName As String, _
                                 ByVal TblName As String, _
                                 ByVal DisplayName As String, _
                                 ByVal ImgName As String, _
                                 ByRef AtTblName As Table, _
                                 ByVal intParent As Integer) As Integer
        Dim tbl_Test As Table
        Dim tbl_Row As TableRow
        Dim tbl_Cell As TableCell
        Dim PanelTemp As New Panel
        Dim intI As Integer
        Dim arrChild As ArrayList
        Dim drTemp As DataRow
        'Dim strParent As String

        tbl_Test = New Table

        '親によって、子供を取得
        getChildNew(intParent, arrChild)

        For intI = 1 To arrChild.Count
            Dim intNextNum As Integer

            drTemp = arrChild(intI - 1)

            '終了かどうかを判定
            intNextNum = getIsEndNew(CInt(drTemp("ID").ToString()))

            initMeisaiNew(PanelName & intI.ToString, _
                       TblName & intI.ToString, _
                       DisplayName & intI.ToString, _
                       ImgName & intI.ToString, _
                       intNextNum, _
                       tbl_Test, _
                       arrChild(intI - 1), _
                       intI)
        Next
        '********************************************************************************
        tbl_Test.ID = TblName
        tbl_Test.CssClass = "data4 font_size13 border_urdl"
        tbl_Test.CellPadding = 0
        tbl_Test.CellSpacing = 0
        tbl_Test.Width = Percentage(100)
        PanelTemp.ID = PanelName
        PanelTemp.Controls.Add(tbl_Test)

        tbl_Cell = New TableCell
        tbl_Row = New TableRow
        tbl_Cell.Width = Pixel(5)
        tbl_Row.Cells.Add(tbl_Cell)

        tbl_Cell = New TableCell
        tbl_Cell.Controls.Add(PanelTemp)
        tbl_Row.Cells.Add(tbl_Cell)

        tbl_Row.ID = DisplayName
        tbl_Row.Style.Item("display") = "block"

        AtTblName.Rows.Add(tbl_Row)
        Exit Function
ERR_FLAG:

    End Function
    ' Add By ZhengJia On 2006/12/31
    Private Function initMeisaiNew(ByVal PanelName As String, _
                                    ByVal TblName As String, _
                                    ByVal DisplayName As String, _
                                    ByVal ImgName As String, _
                                    ByVal intNextNum As Integer, _
                                    ByRef AtTblName As Table, _
                                    ByVal drRole As DataRow, _
                                    ByVal intI As Integer) As Integer
        Dim tbl_Test As Table
        Dim tbl_Row As TableRow
        Dim tbl_Cell As TableCell
        Dim PanelTemp As New Panel
        Dim strSekisanMeisa As String

        tbl_Test = New Table
        tbl_Row = New TableRow
        tbl_Cell = New TableCell

        strSekisanMeisa = "<table class='font_size13' cellpadding='0' cellspacing='0'>"
        strSekisanMeisa = strSekisanMeisa & "<tr>"
        strSekisanMeisa = strSekisanMeisa & "<td>"

        If intNextNum > 0 Then
            strSekisanMeisa = strSekisanMeisa & "<a href='javascript:onClick=fn_Display(""" & DisplayName & """);fn_ImageChange(""" & ImgName & """);'> " & _
                                                "   <img src='./image/minus.gif' id='" & ImgName & "' border='0'> " & _
                                                "</a> " & "<a href='GridView.aspx?name=" & drRole("NAME").ToString() & "' target='GridView'>" & drRole("NAME").ToString() & "</a>"

            'Else
            '    strSekisanMeisa = strSekisanMeisa & "<a href='GridView.aspx?name=" & drRole("NAME").ToString() & "' target='GridView'>" & drRole("NAME").ToString() & "</a>"
        End If

        strSekisanMeisa = strSekisanMeisa & "</td>"
        strSekisanMeisa = strSekisanMeisa & "</tr>"
        strSekisanMeisa = strSekisanMeisa & "</table>"



        If intNextNum > 0 Then
            '******ライン一*****************************
            tbl_Cell.Text = strSekisanMeisa
            tbl_Cell.ColumnSpan = 2
            tbl_Row.Cells.Add(tbl_Cell)
            tbl_Test.Rows.Add(tbl_Row)
            Dim intCur_ID = CInt(drRole("ID").ToString())
            '*******************************************
            initRootNew(PanelName & "_" & intI, _
                       TblName & "_" & intI, _
                       DisplayName, _
                       ImgName, _
                       tbl_Test, _
                       intCur_ID)

            tbl_Test.ID = TblName
            tbl_Test.Width = Percentage(100)
            tbl_Test.BorderWidth = Pixel(0)
            PanelTemp.ID = PanelName
            PanelTemp.Controls.Add(tbl_Test)

            tbl_Cell = New TableCell
            tbl_Row = New TableRow
            tbl_Cell.Controls.Add(PanelTemp)
            tbl_Row.Cells.Add(tbl_Cell)

            AtTblName.Rows.Add(tbl_Row)
        Else
            tbl_Cell.Text = strSekisanMeisa
            tbl_Row.Cells.Add(tbl_Cell)

            tbl_Row.ID = DisplayName
            tbl_Row.Style.Item("display") = "block"
            AtTblName.Rows.Add(tbl_Row)
        End If
        Exit Function
ERR_FLAG:
    End Function

End Class
回复

使用道具 举报

3

主题

9

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
 楼主| 发表于 2020-8-8 13:30:01 | 显示全部楼层
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>ツリーテスト</title>
    <style>
    .font_size13{
            font-size:13px;
    }
    </style>
    <script language=javascript>
    <!--
            imagefile = new Array("./image/minus.gif", "./image/plus.gif");

                //画像をキャッシュします
                image = new Array(imagefile.length);
                for(count = 0; count < (imagefile.length); count++){
                        image[count] = new Image();
                        image[count].src = imagefile[count];
                }

                function fn_ImageChange(id){
                        //alert(id);
                        strPath = window.document.images[id].src;
                        strImgName = strPath.lastIndexOf("/");

                        if(strPath.substring(strImgName+1) != "plus.gif"){
                                window.document.images[id].src  = imagefile[1];
                        }else{
                                window.document.images[id].src  = imagefile[0];
                        }
                }

                function fn_Display(id){
                        //alert(id);
                        if(document.all){
                                if(document.all(id).style.display == "block"){
                                        document.all(id).style.display = "none";
                                }else if(document.all(id).style.display == "none"){
                                        document.all(id).style.display = "block";
                                }
                        }else if(document.getElementById){
                                if(document.getElementById(id).style.display == "block"){
                                        document.getElementById(id).style.display = "none";
                                }else if(document.getElementById(id).style.display == "none"){
                                        document.getElementById(id).style.display = "block";
                                }
                        }
                }
        //-->
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:Table ID="mainTable" runat="server" BorderStyle="Solid" BorderWidth="2px">
        </asp:Table>
    </div>
    </form>
</body>
</html>
回复

使用道具 举报

3

主题

9

帖子

8.00

积分

新手上路

Rank: 1

积分
8.00
 楼主| 发表于 2020-8-8 13:45:01 | 显示全部楼层
Imports Microsoft.VisualBasic
Imports System.Data
Imports System.Data.SqlClient

Public Class CommonDBClass
    Implements IDisposable

#Region "パブリック列挙定数"
    '// DB接続状況
    Public Enum DataBaseConnectStatus
        Connect = 0
        DisConnect = 1
    End Enum

    '// トランザクション実行状態
    Public Enum DataBaseTranStatus
        Exist = 0
        NotExist = 1
    End Enum

#End Region

#Region "プライベート変数"
    '// ADO.NET
    Private MobjADONETCon As SqlConnection
    Private MintADONETTran As DataBaseTranStatus = DataBaseTranStatus.NotExist
    Private MobjADONETTran As SqlTransaction
#End Region

#Region "コンストラクタ&デストラクタ"
    '// Newメソッド
    Public Sub New()
        Me.ADONETConnectDB()
    End Sub

    '//ADO.NET DB接続
    Private Sub ADONETConnectDB()

        Try
            Dim strConn As String = ""

            'strConn = "server=" & Current.Session.Contents("DataSource").ToString & ";" & _
            '                "database=" & Current.Session.Contents("DBN").ToString & ";" & _
            '                "uid=" & Current.Session.Contents("UserN").ToString & ";" & _
            '                "pwd=" & Current.Session.Contents("PassWD").ToString & ";" & _
            '                "connect timeout=" & Current.Session.Contents("DBTIMEOUT").ToString & ";" & _
            '                "Connection Lifetime=20;Pooling='true';" & _
            '                "max pool Size = " & Current.Session.Contents("MAXPOOL").ToString & ";" & _
            '                "min pool Size = " & Current.Session.Contents("MINPOOL").ToString & ""

            Dim rootWebConfigDb As System.Configuration.Configuration
            rootWebConfigDb = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("/" & Constants.APP_PROJECT_NAME)
            If (0 < rootWebConfigDb.AppSettings.Settings.Count) Then
                Dim customSetting As System.Configuration.KeyValueConfigurationElement
                customSetting = rootWebConfigDb.AppSettings.Settings(Constants.APP_DB_CONNECT)
                If Not (Nothing = customSetting.Value) Then
                    strConn = customSetting.Value
                End If
            End If

            Me.MobjADONETCon = New SqlConnection(strConn)
            Me.MobjADONETCon.Open()
        Catch ex As Exception

            'Throw New PImacsW.Common.DB.ConnectException("データベースに接続出来ません。", ex)

        End Try

    End Sub
    '// Disposeメソッド
    Public Sub Dispose() Implements IDisposable.Dispose
        Me.Finalize()
        GC.SuppressFinalize(Me)
    End Sub

    '// Finalizeメソッド
    Protected Overrides Sub Finalize()

        '// DB切断(ADO.NET)
        If Me.MobjADONETCon.State = ConnectionState.Open Then
            Me.MobjADONETCon.Close()
        End If
        If IsNothing(Me.MobjADONETCon) = False Then
            Me.MobjADONETCon.Dispose()
        End If

    End Sub
#End Region

#Region "パブリックプロパティ"

#Region "DB接続(ADO.NET)"

    '// DB接続(ADO.NET)
    Public Property ADONETDBConnecion() As SqlConnection
        Get
            Return Me.MobjADONETCon
        End Get
        Set(ByVal Value As SqlConnection)
            Me.MobjADONETCon = Value
        End Set
    End Property

#End Region

#Region "DB接続状態(ADO.NET)"

    '// DB接続状態(ADO.NET)
    Public ReadOnly Property ADONETDBConnectStatus() As DataBaseConnectStatus
        Get
            If Me.MobjADONETCon Is Nothing Then
                Return DataBaseConnectStatus.DisConnect
            Else
                Return DataBaseConnectStatus.Connect
            End If
        End Get
    End Property

#End Region

#Region "トランザクション実行状態(ADO.NET)"

    '// トランザクション実行状態(ADO.NET)
    Public ReadOnly Property ADONETDBTranStatus() As DataBaseTranStatus
        Get
            Return Me.MintADONETTran
        End Get
    End Property

#End Region

#Region "データセット取得(SQL文)"

    '// データセット取得(SQL文)
    Public Function ADONETGetDataSetfromSQL(ByVal SQLStatement As String, _
                                            Optional ByVal TableName As String = "") As System.Data.DataSet

        Dim cmd As SqlCommand
        Dim ds As System.Data.DataSet
        Dim sqlDta As SqlDataAdapter

        Try

            If Me.MobjADONETCon.State <> ConnectionState.Open Then
                Me.MobjADONETCon.Open()
            End If

            sqlDta = New SqlDataAdapter(SQLStatement, Me.MobjADONETCon)

            If Me.MintADONETTran = DataBaseTranStatus.Exist Then
                sqlDta.SelectCommand.Transaction = Me.MobjADONETTran
            End If

            ds = New System.Data.DataSet
            If TableName = "" Then
                sqlDta.Fill(ds)
            Else
                sqlDta.Fill(ds, TableName)
            End If

            Return ds

        Catch ex As System.Data.SqlClient.SqlException
            Dim errorMessages As String
            Dim statusMessage As String
            Dim i As Integer

            statusMessage = "★Status: "

            If MobjADONETCon Is Nothing Then
                statusMessage = statusMessage & "DBと接続が存在しない。"
            Else
                statusMessage = statusMessage & "DBと接続が存在する。"

                If Me.MobjADONETCon.State = ConnectionState.Open Then
                    statusMessage = statusMessage & "OPEN状態になる。"
                Else
                    statusMessage = statusMessage & "CLOSE状態になる。"
                End If
            End If

            For i = 0 To ex.Errors.Count - 1
                errorMessages += ControlChars.NewLine _
                               & "★Message: " & ex.Errors(i).Message & ControlChars.NewLine _
                               & "★Fuction: DBCommon.ADONETGetDataSetfromSQL " & ControlChars.NewLine _
                               & "★Number: " & ex.Errors(i).Number & ControlChars.NewLine _
                               & statusMessage & ControlChars.NewLine
            Next i

            Throw New Exception(errorMessages)
        Catch ex As Exception

            Dim errorMessages As String
            Dim statusMessage As String

            statusMessage = "★Status: "

            If MobjADONETCon Is Nothing Then
                statusMessage = statusMessage & "DBと接続が存在しない。"
            Else
                statusMessage = statusMessage & "DBと接続が存在する。"

                If Me.MobjADONETCon.State = ConnectionState.Open Then
                    statusMessage = statusMessage & "OPEN状態になる。"
                Else
                    statusMessage = statusMessage & "CLOSE状態になる。"
                End If
            End If

            errorMessages += ControlChars.NewLine _
                           & "★Message: " & ex.GetBaseException.Message & ControlChars.NewLine _
                           & "★Fuction: DBCommon.ADONETGetDataSetfromSQL " & ControlChars.NewLine _
                           & statusMessage & ControlChars.NewLine

            Throw New Exception(errorMessages)

        Finally

            If IsNothing(cmd) = False Then cmd.Dispose()
            If IsNothing(ds) = False Then ds.Dispose()
            If IsNothing(sqlDta) = False Then sqlDta.Dispose()

        End Try

    End Function

#End Region
回复

使用道具 举报

0

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-8-8 14:15:01 | 显示全部楼层
呵呵小日本的代码也搞到了
回复

使用道具 举报

0

主题

3

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-8-17 16:30:01 | 显示全部楼层
写自己的软件,让客户哭去吧!

~~~ >_< ~~~


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表