2012-07-17 5 views
0

game.service에 액세스해야하는 gameComponent가 있습니다. 다음 예제에서는 객체에서 microsoft.xna.framework.graphics.spritebatch 로의 암시 적 변환 오류가 발생합니다. C# 예제는 개체를 spritebatch로 캐스팅해야 함을 나타냅니다. 누구든지 vb.net에서 이것을 할 수 있습니까?XNA 및 vb.net에서 개체를 spritebatch로 캐스팅합니다.

예 :의 SpriteBatch = Game.Services.GetService으로 희미한의 SpriteBatch (GetType을 (의 SpriteBatch는))

답변

0

당신은 캐스팅 할 필요가있는 객체, 언급하지 않았다. GetService()의 반환 값입니다. 그렇다면 다음과 같이하고 싶습니다.

Dim spriteBatch As SpriteBatch = DirectCast(Game.Services.GetService(GetType(SpriteBatch)), SpriteBatch) 

아마도 일반적인 방법이 도움이 될 것입니다. 일반적인 방법을 사용하면 캐스팅 할 필요가 없습니다.

Function GetService(Of T)() As T 
    '... 
End Function 
Dim spriteBatch = Game.Services.GetService(Of SpriteBatch)() 
관련 문제