gpt4 book ai didi

ASP.NET/计时器/表格 + 图像 = 没有勾选/更新

转载 作者:行者123 更新时间:2023-12-01 06:36:29 25 4
gpt4 key购买 nike

我有一个页面,它从远程服务中检索字符信息,然后在 UpdatePanel 内的表中显示该信息。如果我所做的只是向表格中添加表格行、表格单元格和文本,表格会完全刷新。但是,如果我尝试通过 img 标签或 Image 类添加图像,则表会更新一次,然后拒绝再更新。

我浏览了一些 Google 搜索并阅读了每次搜索的前几页结果,并检查了 stackoverflow,但没有任何结果与我的特定问题相匹配。我可以不用图像,但理想情况下,我想添加它们,因为我想用它们来直观地表示当前影响每个游戏角色的状态效果。代码如下。

<asp:ScriptManager ID="scMain" runat="server" />
<asp:Timer ID="tmrRefresh" runat="server" Interval="5000" Enabled="true" />
<asp:UpdatePanel ID="udPanel" runat="server">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="tmrRefresh" EventName="Tick" />
</Triggers>
<ContentTemplate>
<asp:Table id="tblCharacters" runat="server">
<asp:TableHeaderRow>
<asp:TableHeaderCell>Focus</asp:TableHeaderCell>
<asp:TableHeaderCell>Character</asp:TableHeaderCell>
<asp:TableHeaderCell>Location</asp:TableHeaderCell>
<asp:TableHeaderCell>Ping</asp:TableHeaderCell>
</asp:TableHeaderRow>
</asp:Table><br />
<asp:Label ID="lblNote" runat="server" />
</ContentTemplate>
</asp:UpdatePanel>

代码隐藏:
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not Master.IsLoggedIn Then
Response.Redirect("login.aspx")
Else
FillCharacterTable()
End If
End Sub

Private Sub FillCharacterTable()
Dim Foci() As Byte = {0, 4, 10, 19, 24}
Dim Names() As String = {"Unknown", "Gatekeeper", "Dreamseer", "Soulmaster", "Fatesender"}
Dim HaloColors() As Byte = {0, 4, 15, 7, 18}

Dim c As New CharacterInfoClient ' Remote service

Dim Characters() As String = c.GetCharacterInformation

For Each s As String In Characters
Dim args() As String = s.Split("|")
Dim tr As New TableRow
' add focus elemen icon
Dim focus As Byte = Foci(args(2))

' option 1 - causes timer to stop updating
tr.Cells.Add(New TableCell With {.Text = String.Format("<img src=""http://mydomainremoved.net/images/game/image.gif?s=7&v=3&c1={0}&c2={0}&st=50"">", focus))})

' Option 2, same thing
Dim tc As New TableCell
tc.Controls.Add(New Image With {.ImageUrl = String.Format("http://mydomainremoved.net/images/game/image.gif?s=7&v=3&c1={0}&c2={0}&st=50", focus)})

tr.Cells.Add(tc)

tr.Cells.Add(New TableCell With {.Text = "<a href=""character.aspx?id=" & args(1) & """>" & args(0) & "</a>"})
tr.Cells.Add(New TableCell With {.Text = args(4)})
tr.Cells.Add(New TableCell With {.Text = args(7)})

tblCharacters.Rows.Add(tr)
Next

lblNote.Text = Characters.Length & " characters -- " & Now.ToString

End Sub

最佳答案

也许值得尝试使用 CSS 类而不是图像标签?

td.gatekeeper
{
background-image: url('http://mydomainremoved.net/images/game/image.gif?s=7&v=3&c1=10&c2=10&st=50');
}
td.dreamseer
{
// etc.
}

由于您的 Foci 中的可能值数量有限。数组(我只是假设它们与字符名称相关联),您可以设置多个类,每个类都指向特​​定的图像 url,并根据方法的参数分配所需的任何一个。

关于ASP.NET/计时器/表格 + 图像 = 没有勾选/更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14301240/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com