C# 是否可以在Razor中获取对内存中或动态创建的DOM元素的引用?
如果您有一个带有DOM元素(例如C# 是否可以在Razor中获取对内存中或动态创建的DOM元素的引用?,c#,razor,blazor,C#,Razor,Blazor,如果您有一个带有DOM元素(例如HTMLCanvasElement)的Razor页面,您可以使用@ref获得对它的ElementReference。这对于传递给JavaScript互操作可能很有用,例如,您可以将此引用传递给调用画布上下文绘制命令的互操作库,将ElementReference传递给JS,以便它可以作用于DOM对象 现在,假设您也希望这样做,但是使用在内存中动态创建的htmlcanvaseElement。因此,它不会出现在Razor页面上,也不会有@ref,但您可能希望(从C#)在
HTMLCanvasElement
)的Razor页面,您可以使用@ref
获得对它的ElementReference
。这对于传递给JavaScript互操作可能很有用,例如,您可以将此引用传递给调用画布上下文绘制命令的互操作库,将ElementReference传递给JS,以便它可以作用于DOM对象
现在,假设您也希望这样做,但是使用在内存中动态创建的htmlcanvaseElement
。因此,它不会出现在Razor页面上,也不会有@ref
,但您可能希望(从C#)在其上调用一些绘图命令
所以问题是:是否可以在JS或C#中创建内存中的DOM元素,并获取对其的ElementReference
,或等效的元素
(请注意,有一些方法可以解决我的具体问题,例如,编写C#to JS interop,这样它就不需要画布引用,而是使用唯一标识符,但如果有答案,我认为这个问题在一般情况下是值得的。)