Med kunstig intelligens skaber HP’s nye OmniBook X 14 en unik og skræddersyet brugeroplevelse målrettet dem, der ønsker høj ydeevne og intelligente funktioner
Øh - kan du lige fortælle hvad du har ? For signaturen på din sub er "mærkelig", da dine parameternavne antyder et nummer, mens de tilhørende typer er klasser.
Med "Hvad du har" mener jeg hvilke kontroller ligger i hvad på din side ?
og jeg ville blive ret forbavset hvis du kunne konkatenere to strings på denne måde, og få en ikke-string men en reference til en kontrol ud af det - er det noget som virker i .net ?
radibuttonlist1 og placeret i tableCell1 radibuttonlist2 og placeret i tableCell2 etc
Sub Advarsel(ByVal RadioButtonListName As RadioButtonList, ByVal TabelCellName As TableCell)
If RadioButtonListName.SelectedValue = "" Then TabelCellName.CssClass = "tableAlertOn" End If If RadioButtonListName.SelectedValue <> "" Then TabelCellName.CssClass = "tableAlertOff" End If
If RadioButtonListName.SelectedValue <> "" Then TabelCellName.CssClass = "tableAlertOff" End IfFor each workRow as TableRow in myTable.Rows Dim myList as RadioButtonList Dim cellIndex as Integer=0 Dim controlindex as Integer=0
myList = CType(workRow.Cells(cellIndex).Controls(controlIndex),RadioButtonList) ' så fremt du kun har en rbl i cellen, og cellen er den første i rækkem
If myList.SelectedValue <> "" Then 'i øvrigt er det godt at checke på SelectedIndex (som er -1 hvis intet er sat), fordi det er 'uafhængigt af værdierne, så man ikke skal kode om hvis man laver om på værdierne senere workRow.Cells(cellIndex).CssClass = "tableAlertOff" End If
For each workRow as TableRow in myTable.Rows Dim myList as RadioButtonList Dim cellIndex as Integer=0 Dim controlindex as Integer=0
myList = CType(workRow.Cells(cellIndex).Controls(controlIndex),RadioButtonList) ' så fremt du kun har en rbl i cellen, og cellen er den første i rækkem
If myList.SelectedValue <> "" Then 'i øvrigt er det godt at checke på SelectedIndex (som er -1 hvis intet er sat), fordi det er 'uafhængigt af værdierne, så man ikke skal kode om hvis man laver om på værdierne senere workRow.Cells(cellIndex).CssClass = "tableAlertOff" End If
For Each workRow As TableRow In MyTable.Rows For Each workCell As TableCell In workRow.Cells Dim myList As RadioButtonList Dim cellIndex As Integer = 0 Dim controlindex As Integer = 0
'myList = CType(workRow.Cells(cellIndex).Controls(controlindex), RadioButtonList) ' så fremt du kun har en rbl i cellen, og cellen er den første i rækkem Dim i As Integer = 0 For i = 0 To 2 myList = CType(workCell.Controls.Item(i), RadioButtonList) If myList.SelectedValue = "" Then 'i øvrigt er det godt at checke på SelectedIndex (som er -1 hvis intet er sat), fordi det er 'uafhængigt af værdierne, så man ikke skal kode om hvis man laver om på værdierne senere workRow.Cells(cellIndex).CssClass = "tableAlertOn" Else workRow.Cells(cellIndex).CssClass = "tableAlertOff" End If Next Next Next
række eller søjle ? du må fortælle mig lidt mere så... og du kan checke om en celle har controls
if workRow.Cells(celleX).HasControls then whatever ' hvis vi nu antage at celler enten har en rbl eller intet. Hvis du har en rbl i cellen, så ved du om der er andre kontroller der også, og .Controls(controlIndex) finder så den control som har index bal bla:)
alternativt, så kan du bruge den sædvanlige myList=workRow.Cells(cellIndex).FindControl("navnPåDyret") if not isNothing(myList) then blabla
og jo - du kan løbe igennem celler
for each workCell as TableCell in workRow.Cells ' og her finder du controllen i cellen eller ej next
For Each workRow As TableRow In MyTable.Rows For Each workCell As TableCell In workRow.Cells Dim myList As RadioButtonList Dim cellIndex As Integer = 0 Dim controlindex As Integer = 0
Dim i As Integer = 0 For i = 0 To 2 myList = CType(workRow.Cells(i).Controls(0), RadioButtonList) If myList.SelectedValue = "" Then 'i øvrigt er det godt at checke på SelectedIndex (som er -1 hvis intet er sat), fordi det er 'uafhængigt af værdierne, så man ikke skal kode om hvis man laver om på værdierne senere workRow.Cells(i).CssClass = "tableAlertOn" Else workRow.Cells(i).CssClass = "tableAlertOff" End If Next Next Next
For Each workRow As TableRow In MyTable.Rows Dim cellIndex as Integer =-1 For Each workCell As TableCell In workRow.Cells cellIndex =+1
if cellIndex<3 Then Dim myList As RadioButtonList
myList = CType(workRow.Cells(cellIndex).Controls(0), RadioButtonList) If myList.SelectedIndex = -1 Then workRow.Cells(cellIndex).CssClass = "tableAlertOn" Else workRow.Cells(cellIndex).CssClass = "tableAlertOff" End If end if Next Next Next
da du lige nu spæner rundt over alle rækkens celler og for hver af dem så looper du, oveni, over cellerne 0,1,2, så hver værdi bliver sat lige så mange gange som der er celler i rækken.
For Each workRow As TableRow In MyTable.Rows Dim cellIndex as Integer =-1 For Each workCell As TableCell In workRow.Cells cellIndex =+1
if cellIndex<3 Then Dim myList As RadioButtonList
myList = CType(workCell.Controls(0), RadioButtonList) If myList.SelectedIndex = -1 Then workCell.CssClass = "tableAlertOn" Else workCell.CssClass = "tableAlertOff" End If end if Next Next Next
og hvis du har en rbl i alle cellerne så kan du jo smide cellindex tingesten ud
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.