Te traemos la contestación a esta pregunta, al menos eso deseamos. Si continuas con dudas déjanoslo saber en un comentario y sin pensarlo
Solución:
Hay varias formas de salir de la “manera blazor” de hacer las cosas y lograr la modificación CSS de un elemento.
más simple: Al igual que puedes usar la clase attributeusa el estilo attribute
[email protected]>
@code
string myStyle;
void MyMethod()
myStyle="overflow-y: hidden;"
Avanzado: Usar interoperabilidad JS
una. En la vista principal (index.html
o Pages/_Host.cshtml
dependiendo del tipo de proyecto), cree un punto final js para su componente
b. En archivo de afeitar:
@Inject IJRRuntime JSRuntime
[email protected]>
@code
string myId = Guid.NewGuid().ToString("n");
async Task MyMethod()
await JSRuntime.InvokeAsync("applyStyleForElement",
new id = myId, attrib = "overflowY", value = "hidden" );
Finalmente, aplique a su caso especial con el elemento del cuerpo (método “avanzado” anterior).
una. En la vista principal (index.html
o Pages/_Host.cshtml
dependiendo del tipo de proyecto), cree un punto final js
b. En archivo de afeitar:
@Inject IJRRuntime JSRuntime
(...)
@code
async Task MyMethod()
await JSRuntime.InvokeAsync("applyStyleForBody",
new attrib = "overflowY", value = "hidden" );
Bueno, Blazor aún no admite la modificación directa de css, ya que Web Assembly no lo hace. De todos modos, aviso, está en la hoja de ruta para Web Assembly/Blazor.
Por lo tanto, su mejor apuesta es cambiar el nombre de la clase con variables. Por ahora.
Si entiendes que te ha sido de provecho este artículo, sería de mucha ayuda si lo compartieras con otros programadores así contrubuyes a dar difusión a este contenido.