Verwenden einer Zeichenfolge zum Wechseln der sichtbaren Status in Artikelvorlage

  • Ich habe Daten, die in der Rasteransicht angezeigt werden. Wenn ich es aus einer Tabelle ziehe, möchte ich es lesen / lesen, aber von der anderen einfach lesen. Ich habe eine SqlDataSource, die Text basierend auf dem Ursprung ausspucken kann, und ja, der Text, den er ausspuckt, ist genau. Also habe ich ein Label und ein Textfeld in eine Elementvorlage in gridview eingefügt, und beide haben sichtbare Eigenschaften für ein öffentliches Bool festgelegt.

    Das Problem ist, dass dies nicht immer in einer Reihe steht. Manchmal wechseln die Daten einer Eigenschaft in die andere Form (dh schreibgeschützte Daten werden als Textfeld angezeigt), aber es ist nicht jedes Mal so, es ist nicht ein einfaches Problem, das "wenn meine Aussage falsch ist". Der Anzeigestatus ist oft das Gegenteil des angezeigten Textes.

     <asp:TemplateField HeaderText="Next Price" SortExpression="newdata">
        <ItemTemplate>
            <asp:TextBox ID="ReadWrite" runat="server" 
                Text='<%# Bind("newdata", "{0:N2}") %>' Width="60px"
                class="calculate" onchange="calculate()"
                Visible='<%# ShowBox %>'></asp:TextBox>
            <asp:Label ID="ReadOnly" runat="server" Text='<%# Bind("newdata", "{0:N2}") %>'
                Visible='<%# ShowLabel %>'></asp:Label>
        </ItemTemplate>
    </asp:TemplateField>
     

    Der Code dahinter:

     protected void MasterDisplay_DataBound(object sender, EventArgs e)
    {
        DataSourceSelectArguments sr = new DataSourceSelectArguments();
        DataView dv = (DataView)CheckForCommit.Select(sr);
        if (dv.Count != 0)
            CommittedOrNot.Text = dv[0][0].ToString();
        //for displaying where data is pulled from
    }
    
    public bool ShowBox
    {
        get
        {
            return (CommittedOrNot.Text == "This has not yet been committed.");
        }
        private set { }
    }
    
    public bool ShowLabel
    {
        get { return (CommittedOrNot.Text != "This has not yet been committed."); }
        private set { } 
    }
     

    Irgendwelche Ideen, warum diese Verbindung getrennt wird?

    27 November 2011
    Zeke
1 answer
  • Es stellte sich heraus, dass ich nur UpdateRows und eine DataBind in Commit_Click hinzufügen

    01 December 2011
    ScottieB