Dutch Prime Minister Mark Rutte has signed a security deal with Ukraine in the northeastern city of Kharkiv and says the Netherlands will help fund the supply of 800,000 artillery shells to hold back Russian forces.
Rutte met President Volodymyr Zelenskiy on a surprise visit to Kharkiv, just 40km from the Russian border, and became the seventh foreign leader to sign a 10-year security agreement with Ukraine in the last two months.
"The Netherlands will contribute to the Czech Republic's initiative to purchase 800,000 artillery shells," he told a news conference, saying they would arrive within weeks.
Ukraine is critically short of artillery rounds as its troops try to hold back Russian forces who are again on the offensive in the east, two years after Russia launched its full-scale invasion.
The Czech Republic said last month it had sourced 500,000 rounds of 155mm shells and 300,000 122mm rounds from third countries, which could be delivered to Ukraine in weeks if funding was secured.
The shells would plug a big hole in Ukraine's stockpiles with a vital package of US military assistance stuck in Congress facing months of Republican opposition.
Rutte said the Netherlands would donate 150 million euros ($A248 million) to the Czech initiative, taking the total raised so far to 250 million euros.
The security agreement he signed with Ukraine included 2 billion euros in military aid from the Netherlands this year as well as other defence assistance over the next 10 years, Zelenskiy said.
The visit to Kharkiv was a rare one by a senior foreign politician as the city is regularly attacked by Russian air strikes and is much closer to the Russian border than Kyiv.
The two leaders visited an underground classroom established to allow schoolchildren to attend classes in person, safe from missile strikes.
Rutte praised the courage and determination of the children and teachers as "a true beacon of hope that inspires Ukrainians to keep fighting and allies to keep supporting Ukraine".
"The task facing Ukrainian allies is clear - do whatever you can to provide what is needed, as long as it takes," he said.
Zelenskiy described Rutte's visit as "symbolic" in a "city that has survived a lot".
"Here in Kharkiv, it's 100 per cent obvious that Russia is waging a criminal war, its objective is only destruction."
In a statement on Telegram, Zelenskiy said that more than 20,000 buildings - schools, universities, churches, kindergartens and residential houses - had been destroyed in Kharkiv in the last two years.
Canada, Italy, Germany, France, Denmark and the United Kingdom have all signed bilateral security deals over the past two months that are meant to tide Ukraine over until it can reach its aim of joining the NATO military alliance.
Andriy Yermak, head of Zelenskiy's office, said agreements were also being discussed with other countries.